centOS搭建ftp服务器

vsftpd的设置与应用

一、安装

#安装vsftpd   yum install vsftpd -y
#启动vsftpd服务  systemctl start vsftpd
#设置开机自启    systemctl enable vsftpd

二、设置配置文件

vim /etc/vsftpd/vsftpd.conf

最重要的就是


image.png

image.png
chroot_list_file=/etc/vsftpd.chroot_list          #虚拟用户列表,每行一个用户名
chroot_local_user=YES            #禁止本地用户离开自己的主目录
chroot_list_enable=YES                             # 禁止本地用户离开自己的主目录

像是禁止匿名登录等等,如果有需要的话在进行配置就好了。
另外

linsten_ipv6=NO 

这个一定要NO,不然会出现连接超时等问题

三、创建ftp专门的登陆账号

useradd username #可以指定目录,若不指定,会在home下创建文件夹
password username #设置登陆密码
usermod -d /home/username #设置用户登录的主目录
chmod -R 777 /home/username #给目录赋权限

创建完用户名以后需要在/etc/vsftpd/vsftpd.chroot_list文件里添加用户名,一行一个

然后通过MobaXterm等软件进行ftp连接。

四、可能出现的问题:

1. 10060:

端口错误,地址错误,防火墙等(这个一般都是配置文件出错)

2. 550:

目录没有权限,文件或文件夹不存在(ftp的主目录权限问题,一般755)

3. 500:

getsebool -a | grep ftp_home #查找ftp的主目录
image.png

如果ftp_home的目录不同,下面的代码也做出相应的修改。

setsebool  -P  ftp_home_dir 1

如果还是不行的话

setsebool allow_ftpd_full_access 1

setsebool allow_ftpd_use_cifs 1

setsebool allow_ftpd_use_nfs 1

setsebool -P ftp_home_dir 1

setsebool httpd_enable_ftp_server 1

setsebool tftp_anon_write 1

systemctl restart vsftpd 

推荐阅读更多精彩内容