首页 > 代码库 > Linux下ftp的安装配置
Linux下ftp的安装配置
1.查看ftp包是否可用
yum list | grep vsftpd
2.安装ftp
yum install vsftpd
3.启动
systemctl start vsftpd
4.开机启动
chkconfig vsftpd on
5.增加ftp用户
useradd -d /home/qq000 -g ftp -s /sbin/nologin qq000
6.设置用户密码
passwd qq000
4.配置ftp
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES,允许匿名用户登录。
no_anon_password=YES,匿名用户登录时不需要输入密码。
local_enable=YES,允许本地用户登录。
write_enable=YES,是否允许上传。
local_umask=022,默认umask码。
chroot_local_user #是否将所有用户限制在主目录,YES为启用 NO禁用.(该项默认值是NO,即在安装vsftpd后不做配置的话,ftp用户是可以向上切换到要目录之外的)
chroot_list_enable=YES ,是否启用限制用户名单
chroot_list_file=/etc/vsftpd/chroot_list # 根据chroot_local_user的变化而变化,无论chroot_local_user设置为什么意思,chroot_list_file里的名单则为它的例外)
local_root=/home/ftp 这行可单独加上 指定所有用户统一登陆目录
ftpd_banner=Welcometo blah FTP service,可以自定义FTP用户登录到服务器所看到的欢迎信息。
xferlog_enable=YES,启用记录上传/下载活动日志功能。
xferlog_file=/var/log/vsftpd.log,可以自定义日志文件的保存路径和文件名,默认是/var/log/vsftpd.log。
userlist_enable=YES此项配置/etc/vsftpd/user_list中指定的用户也不能访问服务器,若添加userlist_deny=NO,则仅仅/etc/vsftpd.user_list文件中的用户可以访问,其他用户都不可以访问服务器。如果userlist_enable=NO,userlist_deny=YES,则指定使文件/etc/vsftpd/user_list中指定的用户不可以访问服务器,其他本地用户可以访问服务器。
根据个人需求设置,我的设置如下:
anonymous_enable=YES 允许匿名用户登录 不打开注释则不允许
chroot_local_user=YES 限制所有用户只能在家目录活动
allow_writeable_chroot=YES
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list 只允许/etc/vsftpd/user_list文件中指定的用户可以登录
另外:用户的家目录必须设置权限 否则一样无法登录
7.将ftp用户qq000添加到/etc/vsftpd/user_list中
8.关闭SELinux
临时关闭(不用重启机器):setenforce 0
永久关闭需重启:修改/etc/selinux/config 文件 将SELINUX=enforcing改为SELINUX=disabled
9.还要搞一个东西:防火墙。(请注意 要么firewall 要么iptables 要么阿里云的安全组)
centos7默认防火墙是firewall,会阻止ftp的连接,这里我们要把它停掉。
关闭:systemctl stop firewalld
禁止开机启动:systemctl disable firewalld
再查看iptables有没有 一般系统是自带安装好的 如果没有请额外安装。
Linux下ftp的安装配置