centos7 安装简单vsftpd,本地用户,禁止匿名

一、关闭 sellinux

查看SELinux状态:

1/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态SELinux status:                 enabled

关闭SELinux

1、临时关闭(不用重启机器):

setenforce 0                  ##设置SELinux 成为permissive模式

                              ##setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

SELINUX=enforcing改为SELINUX=disabled

重启机器即可,不关闭SELinux 会出些乱七八糟的问题,例如530 login incorrect,路径转换失败,文件夹不显示,无法上传的问题。暂时没研究如何设置SELinux,干脆关闭了事。

二、防火墙增加端口配置

vi /etc/sysconfig/iptables

 

-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 30000:30999 -j ACCEPT

重启防火墙

三、安装vsftpd

yum �Cy install vsftpd

 

systemctl start vsftpd

 

vi /etc/vsftpd/vsftpd.conf

 

添加

allow_writeable_chroot=YES

pasv_min_port=30000

pasv_max_port=30999

userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user1_list

 

修改:

anonymous_enable=NO

local_enable=YES

write_enable=YES

chroot_local_userYES
chroot_list_enable=YES(
这行可以没有, 也可以有)
chroot_list_file=/etc/vsftpd/chroot_list

那么, 凡是加在文件chroot_list中的用户都是不受限止的用户
, 可以浏览其主目录的上级目录.

 

注:

所以, 如果不希望某用户能够浏览其主目录上级目录中的内容,可以如上设置, 然后在
文件chroot_list中不添加该用户即可(此时, 在该文件中的用户都是可以浏览其主目录之外的目录的).
或者, 设置如下
chroot_local_userNO
chroot_list_enable=YES(
这行必须要有, 否则文件vsftpd.chroot_list不会起作用)
chroot_list_file=/etc/vsftpd/chroot_list
然后把所有不希望有这种浏览其主目录之上的各目录权限的用户添加到文件chroot_list(此时, 在该文件中的用户都是不可以浏览其主目录之外的目录的)
中即可(一行一个用户名)

 

建立FTP账户

首先自己建个FTP目录,或者选定已经存在的目录

再建FTP账户,同时设置主目录只允许FTP,不允许系统登录

useradd username -s/sbin/nologin �Cd /var/www/html/

vi /etc/passwd 可以看到新建的账号

passwd username 设置密码

vi /etc/passwd 看下结果是否正确

usermod -d /new/home_dir -U username 命令就可以更改用户的宿主目录

设置目录权限

chmod �CR 755 /FTP修改FTP目录及子目录权限

修改所属用户

chown gamer gstore         改变gstore目录

chown -R gamer gstore         改变gstore目录及子目录

修改所属用户组

chown :ftp gstore    改变gstore目录

chown -R :ftp  gstore  改变gstore目录及子目录

username 加到user1_list文件

 

你可能感兴趣的:(vsftpd,CentOS7)