2020年10月15日09:07:40
服务器迁移从centos6.9到8.1,我以为最麻烦的是php的扩展安装,以为有些扩展没有支持到8.1的版本,没想到是vsftpd
之前服务的ftp服务也是vsftp,简单安装之后就可以使用了,但是这次测试了很多次依然是530 各种错误,后来发现对vsftp的工作模式完全不了解
安装版本是 vsftpd: version 3.0.3
工作模式:
- 主动模式: FTP服务器主动向客户端发起连接请求
- 被动模式(默认工作模式): FTP服务器等待客户端发起连接请求
vsftpd服务程序
vsftpd作为更加安全的文件传输服务程序。允许用户以三种认证模式登录到FTP服务器。
- 匿名开放模式: 一种最不安全的认证模式,任何人都可以无需密码验证而直接登录到FTP服务器。
- 本地用户模式: 通过Linux系统本地账户密码信息进行认证的模式,比匿名开放模式更安全,配置更简单那。但如果黑客破解了账户信息,就就可以畅通无阻的登录FTP服务器,控制整个服务器。
- 虚拟用户模式: 最安全的认证模式,需要为FTP服务单独建立用户数据库文件,虚拟出用来进行口令认证的账户信息,而这些账户信息在服务器系统中实际上是不存在的,仅供FTP服务程序进行认证使用。因此,即使破解了账户信息也无法登录服务器,降低破坏范围和影响。
注意,网上的博客上没有注明是那种工作模式导致,有的使用了PAM做权限管理,有的没有,其实更常用的是本地用户模式,使用pam增加虚拟用户的就是虚拟用户模式
/etc/vsftpd 文件配置目录
.
├── banned_emails
├── chroot_list
├── ftpusers
├── user_list
├── vsftpd.bak
├── vsftpd.conf
└── vsftpd_conf_migrate.sh
vi vsftpd.conf
#匿名开放模式
anonymous_enable=NO
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
#本地用户模式
local_enable=YES
write_enable=YES
local_umask=022
userlist_enable=YES
userlist_deny=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
#chown_username=root
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
data_connection_timeout=120
#nopriv_user=root
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
deny_email_enable=YES
banned_email_file=/etc/vsftpd/banned_emails
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
ls_recurse_enable=YES
listen=YES
listen_port=2111
listen_ipv6=NO
allow_writeable_chroot=YES
pam_service_name=vsftpd
tcp_wrappers=NO
local_root=/data/wwwroot
pasv_enable=YES
pasv_min_port=10080
pasv_max_port=10090
查看登录日志
tail -f /var/log/secure
vi /etc/services 查看服务的默认端口号
vi /etc/shells
因为安全问题,用户是不能登录
加上
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/sbin/nologin
不然503
注意比如我让www用户作为ftp账户
local_root=/data/wwwroot
的用户组记得
chown -R www:www /data/wwwroot
参考:
https://blog.csdn.net/m0_46327721/article/details/107930970
https://blog.51cto.com/12674559/2114012?source=dra