centos7: vsftpd安装及启动: ftp配置
1安装:
yum -y install vsftpd
/bin/systemctl start vsftpd.service #启动
/bin/systemctl enable vsftpd.service #开机启动
2.目录说明
/etc/pam.d/vsftpd #基于pam的vsftpd验证配置文件
/etc/vsftpd #软件主目录
/etc/vsftpd/vsftpd.conf #主程序配置文件
/etc/vsftpd/user_list #通过主配置文件设置的黑名单或白名单
/etc/vsftpd/ftpusers #默认的vsftpd黑名单
/usr/sbin/vsftpd #主程序
3.confi配置文件
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
tcp_wrappers=YES
例如:创建虚拟ftp账户,登录ftp
1.创建虚拟用户数据库
依赖:
yum -y install db4-utils
账户:可以添加多个
vi /etc/vsftpd/vlogin
tomcat #用户
123456 #密码
加密处理
db_load -T -t hash -f /etc/vsftpd/vlogin /etc/vsftpd/vlogin.db
chmod 600 /etc/vsftpd/{vlogin, vlogin.db}
2.创建pam文件,验证虚拟账户
vi /etc/pam.d/vsftpd.pam
#先要确定你的linux内核是64位的,还是32位的,32位的不能用lib64
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin
3.ftp登录的虚拟目录
/var/html/wwwroot
4.创建虚拟用户的目录配置目录及文件
mkdir /etc/vsftpd_user_conf
vi /etc/vsftpd_user_conf/tomcat
内容为:local_root=/var/html/wwwroot
5.配置vsftpd.conf
anonymous_enable=NO #禁止匿名访问
local_enable=YES #启用本机ftp访问功能
write_enable=YES #允许写功能
anon_upload_enable=YES #上传权限
anon_mkdir_write_enable=NO #新建目录权限
anon_other_write_enable=NO #删除/重命名的权限
anon_umask=022 #新建目录权限上传的 #所有非匿名用户映射到vsftpd用户
guest_enable=YES
guest_username=vsftpd #本地账户掩码
local_umask=077
dirmessage_enable=YES #用户进入目录显示信息
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog #限制用户在本目录下,禁止用户切换上级根目录权限
chroot_local_user=YES
chroot_list_enable=NO
allow_writeable_chroot=YES listen=YES #监听端口
listen_port=21 #监听入站FTP端口号 #被动模式
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30999
pam_service_name=vsftpd.pam #虚拟账户
user_config_dir=/etc/vsftpd_user_conf
user_sub_token=$USER #yes为白名单
userlist_enable=YES
userlist_deny=YES tcp_wrappers=YES
6.在/etc/sysconfig/iptables添加防火墙规则
#FTP
-A INPUT -p tcp --dport 21 -j ACCEPT
-A INPUT -p tcp --dport 20 -j ACCEPT
-A OUTPUT -p tcp --sport 21 -j ACCEPT
-A OUTPUT -p tcp --sport 20 -j ACCEPT
#ftp-pasv_min/max
-A INPUT -p tcp --dport 30000:30999 -j ACCEPT
-A OUTPUT -p tcp --sport 30000:30999 -j ACCEPT
如果不行请查看
iptables -nL
清楚防火墙规则
iptables -F