1.1.1 查看是否安装vsftp
rpm -qa | grep vsftpd
1.1.2 如果没有安装:
yum -y install vsftpd
1.2.3 vsftpd.conf 配置文件
匿名权限控制 anonymous_enable=YES #是否启用匿名用户 no_anon_password=YES #匿名用户login时不询问口令 ################服务器功能选项############### xferlog_enable=YES #开启日记功能 xferlog_std_format=YES #使用标准格式 log_ftp_protocol=NO #当xferlog_std_format关闭且本选项开启时,记录所有ftp请求和回复,当调试比较有用. pasv_enable=YES #允许使用pasv模式 pasv_promiscuous+NO #关闭安全检查,小心呀. port_enable=YES #允许使用port模式 prot_promiscuous #关闭安全检查 tcp_wrappers=YES #开启tcp_wrappers支持 pam_service_name=vsftpd #定义PAM 所使用的名称,预设为vsftpd。 nopriv_user=nobody #当服务器运行于最底层时使用的用户名 pasv_address=(none) #使vsftpd在pasv命令回复时跳转到指定的IP地址.(服务器联接跳转?) #############用户连接选项################# max_clients=100 #可接受的最大client数目 max_per_ip=5 #每个ip的最大client数目 connect_from_port_20=YES #使用标准的20端口来连接ftp listen_address=192.168.0.2 #绑定到某个IP,其它IP不能访问 listen_port=2121 #绑定到某个端口 ftp_data_port=2020 #数据传输端口 pasv_max_port=0 #pasv连接模式时可以使用port 范围的上界,0 表示任意。默认值为0。 pasv_min_port=0 #pasv连接模式时可以使用port 范围的下界,0 表示任意。默认值为0。 ##############数据传输选项################# anon_max_rate=51200 #匿名用户的传输比率(b/s) local_max_rate=5120000 #本地用户的传输比率(b/s) ##############安全选项################# Idle_session_timeout=600 #(用户会话空闲后10分钟) Data_connection_timeout=120 #(将数据连接空闲2分钟断) Accept_timeout=60 #(将客户端空闲1分钟后断) Connect_timeout=60 #(中断1分钟后又重新连接) Local_max_rate=50000 #(本地用户传输率50K) Anon_max_rate=30000 # (匿名用户传输率30K) Pasv_min_port=50000 # (将客户端的数据连接端口改在 Pasv_max_port=60000 #50000—60000之间) Max_clients=200 #(FTP的最大连接数) Max_per_ip=4 #(每IP的最大连接数) Listen_port=5555 #(从5555端口进行数据连接)
FTP基本使用:
启动服务
systemctl start vsftpd.service
重启服务
systemctl restart vsftpd.service
重启服务
systemctl stop vsftpd.service
查看状态
service vsftpd status
验证vsftpd状态
systemctl list-dependencies vsftpd
建立基于虚拟用户的FTP服务器,并根据以下要求配置FTP服务器
- 创建用户sui, 密码28456049;
- 默认目录: /var/789, 有读写权限;
- 只能ftp不能telnet;
- 限制用户只能访问/var/789,不能访问其他路径
-
创建目录 # mkdir /var/789 chmod -R 777 /var/789 # useradd sui # passwd 28456049 //更改用户sui的主目录为/var/789 usermod -d /var/789 sui //限定用户sui不能telnet,只能ftp usermod -s /sbin/nologin sui 启动服务 systemctl start vsftpd.service
[案例] 建立基于虚拟用户的FTP服务器,并根据以下要求配置FTP服务器。
(1)配置FTP匿名用户的主目录为/var/ftp/anon。下载带宽限制为100kB/s
(2)建立一个名为abc
,口令为xyz
的FTP账户。下载带宽限制为500kB/s。
(3)设置FTP服务器同时登录到FTP服务器的最大链接数为100
;每个IP最大链接数为3;用户空闲时间超过限值为5分钟。 -
创建目录 # mkdir /var/ftp/anon # useradd abc # passwd abc 在此提示密码过短,修改/etc/pam.d/system-auth文件,输入abc后在此输入,方法成功 编辑配置文件 vim /etc/vsftpd/vsftpd.conf #LOCAL用户 anonymous_enable=YES anon_root=/var/ftp/anon anon_max_rate=100 local_enable=YES local_max_rate=500 max_clients=100 max_per_ip=3 connect_timeout=300 下面是用虚拟用户来实现 vim /etc/vsftpd/vuser 内容如下 tom 123 生成数据库文件 db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.db chmod 600 /etc/vsftpd/vuser.db vim /etc/pam.d/vsftpd 注释掉原来的内容 然后加入 auth required pam_userdb.so db=/etc/vsftpd/vuser account required pam_userdb.so db=/etc/vsftpd/vuser 最后编辑VSFTPD.CONF加入下面两句 guest_enable=YES guest_username=abc