概述
FTP服务器是互联网上提供文件存储和访问访问的计算机,它们依照FTP协议提供服务,FTP是(文件传输协议).顾名思义,就是专门用来传输文件的协议,简单来说,支持FTP协议的服务器就是FTP服务器.
vsftpd是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点,vsftpd是一个UNIX类操作系统上运行的服务器的名字,它可以运行在诸如Linux,BSD,Solaris等系统上,是一个完成免费的,开放源代码的ftp服务器软件,支持很多其他的ftp服务器所不支持的特征
安装FTP(基于头歌实践教学平台)
更新软件源:sudo apt-get update
安装vsftpd:sudo apt-get install vsftpd -y
FTP服务器启动
service vsftpd status 查看当前状态
service vsftpd start 开启vsftpd服务
FTP客户端
安装FTP客户端 apt-get install ftp
初始化环境:"向文件 `/etc/vsftpd.conf` 结尾追加三行 anon_root=/、anon_other_write_enable=YES 和 anon_umask=022 。同时将 anon_upload_enable=YES、write_enable=YES和anon_mkdir_write_enable=YES 前的 # 符号删除,并将 anonymous_enable 设置为 YES。
FTP常见命令用法
ftp
命令格式:
ftp [host] [port]
[host]为要连接的服务器地址,例如:127.0.0.1 (或 localhost )表示连接本地服务器;
[port]为服务器的端口,默认为 21 ,当我们修改了 vsftpd 的默认端口后,我们连接的时候需要指定新端口;
常见ftp
命令如下所示:
FTP>open host [port] 重新建立一个新的连接;
FTP>bye: 终止主机 FTP 进程,并退出 FTP 管理方式;
FTP>close: 终止远程的 FTP 进程,返回到 FTP 命令状态, 所有的宏定义都被删除;
FTP>quit: 同 BYE;
FTP>help [command] 输出命令的解释;
FTP>cd: 更改远程计算机上的目录,同 Linux 的 cd 命令;
FTP>cdup: 更改远程计算机上的目录,返回上一级目录;
FTP>lcd: 改变当前本地主机的工作目录,如果缺省,就转到当前用户的 HOME 目录;
FTP>pwd: 列出当前远程主机目录;
FTP>dir [remote-directory] [local-file] 列出当前远程主机目录中的文件;
FTP>ls [remote-directory] [local-file] 同 dir;
FTP>delete: 删除远程主机中的文件;
FTP>rename [from] [to] 改变远程主机中的文件名;
FTP>rmdir directory-name 删除远程主机中的目录;
FTP>mkdir directory-name 在远程主机中建立目录;
FTP>mget [remote-files] 从远程主机接收一批文件至本地主机;
FTP>get [remote-file] [local-file] 从远程主机中传送至本地主机中;
FTP>mput local-files 将本地主机中一批文件传送至远程主机;
FTP>put local-file [remote-file] 将本地一个文件传送至远程主机中;
FTP>recv remote-file [local-file] 同 get;
FTP>send local-file [remote-file] 同 put;
FTP>status: 显示当前 FTP 的状态;
FTP>! command: 执行本地 shell 命令,如: !dir(显示本机当亲目录内容),如果不加!如:dir(显示服务器当前目录内容)。
连接远程主机
ftp localhost
以匿名用户登录,密码为空
使用ftp
客户端连接本地vsftpd
服务器
FTP使用本地用户登录
常见关于本地用户登录服务器的配置项如下:
local_enable: 是否允许本地用户(即 linux 系统中的用户帐号)登录 FTP 服务器,默认设置为 NO 允许,本地用户登录后会进入用户主目录;
write_enable:是否允许本地用户对 FTP 服务器文件具有写权限,默认设置为 YES 允许;
chroot_local_user:是否将所有用户限制在主目录, YES 为启用 NO 禁用;
chroot_list_enable:是否启动限制用户的名单 YES 为启用 NO 禁用;
chroot_list_file:是否限制在主目录下的用户名单,至于是限制名单还是排除名单,这取决于 chroot_local_user 的值;
local_root: 本地用户登录后的默认工作目录;
local_umask: 设置本地用户的文件掩码为缺省 022;
userlist_enable:此选项激活后,vsftpd 将读取 userlist_file 参数所指定的文件中的用户列表,默认为 NO;
userlist_file:userlist_enable 选项生效后,被读取的包含用户列表的文件。默认值是 /etc/vsftpd.user_list;
userlist_deny:决定禁止还是只允许由 userlist_file 指定文件中的用户登录 FTP 服务器。userlist_enable 选项启动后才能生效。默认值为 YES,禁止userlist_file 指定文件中的用户登录,同时不向这些用户发出输入口令的指令。NO,只允许 userlist_file 指定文件中的用户登录FTP服务器;
案列:
新建一个本地用户(ftpUser密码123),然后配置vsftpd服务允许本地用户登录,使用ftpUser远程连接主机
sudo useradd ftpUser
sudo passwd ftpUser
设置 local_enable=YES(sudo vim /etc/vsftpd.conf)
sudo service vsftpd restart
ftp localhost
最后
以上就是缓慢冬瓜为你收集整理的Linux网络实战- FTP服务器搭建的全部内容,希望文章能够帮你解决Linux网络实战- FTP服务器搭建所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复