CentOS 7系统下安装ftp服务器的全过程
在安装配置过程中走过很多弯路,现在就简单点总结。方便大家学习参考。安装步骤如下:
1、安装ftp,相信这步很简单
# yum -y install ftp vsftpd
查看安装情况
#rpm -qc vsftpd /etc/logrotate.d/vsftpd /etc/pam.d/vsftpd /etc/vsftpd/ftpusers /etc/vsftpd/user_list /etc/vsftpd/vsftpd.conf
2、服务器配置
创建ftp根目录 /ftp/private(这里有个不解的问题,如果创建了一个/root/ftp/private的目录,登录时会提示500 OOPS: cannot change directory:/root/ftp/private之类的错误,目前无法解决,希望有知道的朋友解释一下),如果创建一个公开的目录,需要创建/ftp/open并在/etc/vsftpd/vsftpd.conf增加anon_root=/ftp/open
#mkdir /ftp #mkdir /ftp/private
创建密码明文文件,创建两个用户John,Jack,密码分别是passwxx,passwyy
#vim /etc/vsftpd/pass.txt John passwxx Jack passwyy
根据明文创建密码DB文件,userlist.db就是用户密码的数据库
#db_load -T -t hash -f /etc/vsftpd/pass.txt \ > /etc/vsftpd/userlist.db
创建vftpd 系统账户 ftp_user
#useradd -d /root/ftp/private -s /sbin/nologin ftp_user
配置用户数据
# vi/etc/pam.d/vsftpd //将auth及account的所有配置行行均注释掉,添加如下内容: authrequiredpam_userdb.so db=/etc/vsftpd/userlist accountrequiredpam_userdb.so db=/etc/vsftpd/userlist
userlist就是/etc/vsftpd/userlist.db的数据库,不过不用加.db后缀,系统自动添加
在/etc/vsftpd/vsftpd.conf 添加一下内容:
#vim /etc/vsftpd/vsftpd.conf #anon_root=/ftp/open //如果要增加一个公开的文件目录,将注释去掉virtual_use_local_privs=YES guest_enable=YES guest_username=ftp_user chroot_local_user=YES allow_writeable_chroot=YES
同时将chroot_list_enable=YES,chroot_list_file=/etc/vsftpd/chroot_list
注释去掉并将chroot_list_file=/etc/vsftpd/chroot_list
改为chroot_list_file=/ftp
chroot_list_enable=YES # (default follows) chroot_list_file=/ftp
启动vsftpd
#systemctl start vsftpd
设置开机启动
#systemctl enable vsftpd
查看vsftpd状态
#systemctl status vsftpd ● vsftpd.service - Vsftpd ftp daemon Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled) Active: active (running) since 六 2017-03-11 22:23:42 CST; 2s ago Process: 1094 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS) Main PID: 1095 (vsftpd) CGroup: /system.slice/vsftpd.service └─1095 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf 3月 11 22:23:42 auto systemd[1]: Stopping Vsftpd ftp daemon... 3月 11 22:23:42 auto systemd[1]: Starting Vsftpd ftp daemon... 3月 11 22:23:42 auto systemd[1]: Started Vsftpd ftp daemon.
本地登录
#ftp localhost ……
其他的如果无法创建文件,修改文件之类的,自行更改相关的目录权限。
总结