Linux

安装VsFTPd

sudo apt-get update
sudo apt-get install vsftpd
netstat -tl    #检查端口是否打开
ftp://服务器IP #检查能否访问
/etc/init.d/vsftpd {start stop restart}

sudo useradd -d /var/www/html -s /bin/bash wxc #新建用户+指定目录作为FTP
sudo passwd wxc #设置Ftp密码(二次确认)
sudo chown wxc:wxc /var/www/html #设置ftp目录用户权限(拥有者)

查看系统中多了ftp用户组和ftp用户
cat /etc/group  cat /etc/passwd

cp /etc/vsftpd.conf /etc/vsftpd.conf_bak   #备份配置文件
vi /etc/vsftpd.conf  #配置

listen=yes      #独立的VSFTPD服务器
listen_ipv6=NO  #否则ipv4无法访问
anonymous_enable=NO #不允许匿名访问
local_enable=YES    #本机也能访问
write_enable=YES
local_umask=022     #指定本地用户上传后的文件权限设置
添加
userlist_deny=NO      #允许ftp登录的本地用户
userlist_enable=YES
userlist_file=/etc/allowed_users  #记录了允许本地登录用户的文件
seccomp_sandbox=NO    #该选项不配置导致莫名其妙的530问题
========================================================
vi /etc/allowed_users  #输入用户wxc,保存
vi /etc/ftpusers #查看一下,这个文件中记录的是不能访问FTP服务器的用户清单

关于权限:
chmod 755  /var/www/html
#umask = 022 时,新建的目录 权限是755,文件的权限是 644
#umask = 077 时,新建的目录 权限是700,文件的权限时 600

解决:限制ftp用户只能在其主目录下(root dir)下活动, 一直向上的时候把所有目录都列出来了-不安全!!
#local_root=/var/www/html  #本地用户登录后的根目录(非匿名、输入用户名和密码登录的)
#anon_root=/var/www/html/  #匿名anonymous用户访问的主目录

allow_writeable_chroot=YES #避免错误refusing to run with writable root inside chroot()

chroot_local_user=YES #是否将所有用户限制在主目录(总开关), 默认值是NO!
chroot_list_enable=NO #是否允许例外(chroot_local_user与chroot_list_enable的组合效果)
chroot_list_file=/etc/vsftpd.chroot_list  #例外用户列表
vi /etc/vsftpd.chroot_list #添加用户, 一行一个

全部完成后:sudo service vsftpd restart 使配置生效
View Code

 vi /etc/vsftpd.conf

listen_port=端口号
vi /etc/services
修改 ftp 21/tcp ftp 21/udp
sudo service vsftpd restart

 connect_from_port_20=YES #主动式连接使用的数据通道

pasv_enable=NO #支持数据流的被动式连接模式
==================================================
connect_from_port_20=NO #被动模式
pasv_enable=YES #设置是否允许被动模式 (默认为YES)
pasv_min_port=1024 #(default:0(use any port))
pasv_max_port=65536 #(default:0(use any port))

posted @ 2019-09-12 18:13  德芙70  阅读(181)  评论(0编辑  收藏  举报