暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux文件共享服务—FTP常见配置

一直爱流浪的猫 2018-01-31
1456

1.安装FTP服务

yum -y install vsftpd

2.vsftpd服务的目录 /etc/vsftpd

3.防火墙把vsftpd服务的端口放出去 20 21端口

iptables -I INPUT 1 -p tcp --dport 20:21 -j ACCEPT

4.vsftpd.conf配置文件

(1)anonymous 匿名用户

  anonymous_enable=YES 允许匿名用户登录

  在windows下登录ftp服务器

如果把anonymous_enable=NO  不允许匿名用户登录

重启vsftpd服务

service vsftpd restart

再次在windows上以匿名用户登录ftp服务器,匿名用户已经登录不进去了,登录失败


Eg: 如果selinux没有关闭,登录本地用户登录不进去

没有更改,临时把selinux关闭,setenforce 0

第二种办法:把selinux打开,setenforce 1

查看sebool

getsebool -a | grep ftp

setsebool -P ftp_home_dir on 

再用本地用户登录ftp服务器显示的就是用户家目录

(2)anon_upload_enable=YES        

  //匿名用户允许上传

  anon_mkdir_write_enable=YES    

  //匿名用户允许创建目录和写权限

重启vsftpd服务  service vsftpd restart

windows客户端登录FTP服务器上传文件试试

还是上传有问题,匿名用户登录时 默认的位置是/var/ftp目录 查看/var/ftp目录的权限

没有写权限所以上传不了东西匿名用户,创建一个文件夹ftp-name

mkdir ftp-name

/var/ftp/ftp-name 的属主修改成ftp为属主

chown ftp:ftp /var/ftp/ftp-name  

再次用匿名用户ftp上传文件尝试

还是不能上传 再次考虑查看sebool

getsebool -a | grep ftp 

发现allow_ftpd_anon_write 允许匿名用户写是关闭的

setsebool -p allow_ftpd_anon_write on  

//允许匿名用户写打开

setsebool -P allow_ftpd_full_access on

再次用匿名用户ftp登录上传文件尝试

(3)dirmessage_enable=YES   

 //目录的欢迎语

 Eg: 给/var/ftp/ftp-name写个.message文件,写入Welcome to ftp-name dir!

windows登录用匿名用户ftp登录FTP 服务器  切换至ftp-name目录查看结果

(4)#chown_upload=YES

  #chown_username=whoever

  启用匿名用户上传,设置一个chown_username=120 

  无论用哪个匿名用户上传属主都 是linux用户120

  修改/etc/vsftpd/vsftpd.conf文件

  chown_upload=YES

  chown_username=120

(5)ftp_banner FTP登录欢迎词

  #ftp_banner=Welcome to FTP-SERVER

(6)#chroot_local_user=YES  

  让本地所有的用户都chroot

  #chroot_list_enable=YES 

  开启chroot列表文件

  #chroot_list_file=/etc/vsftpd/chroot_list 

  chroot列表文件的位置

  用本地用户120登录ftp服务器用pwd查看目录位置  

把本地普通用户tom加入到chroot_list之后再次查看

Tom用户登录ftp服务器 pwd 命令查看到的当前的工作目录

(7)#userlist_enable=YES

  //启用用户列表

  #userlist_deny=YES

  //出现在user_list文件里的不可以登录ftp服务器

  #userlist_file=/etc/vsftpd/user_list    

  //user_list文件的路径

  没把tom加入user_list里可以登录FTP服务器

tom用户加入到user_list里  再次登录FTP服务器

echo tom >user_list

Permission denied不允许登录FTP服务器

再次修改配置文件

#userlist_deny=NO   出现在userlist里的用户才可以登录FTP服务器

120用户登录FTP服务器查看情况,不允许120用户登录FTP服务器,120用户不在userlist

用在userlist里的tom用户登录FTP服务器,

(8)ftpusers 凡是出现在ftpusers里的用户都不可以登录FTP服务器

  把tom用户加入到ftpusers

  echo tom > ftpusers

  用tom用户登录FTP服务器查看结果 tom用户是否可以登录FTP服务器

120用户登录FTP服务器查看结果

为什么出现在ftpusers里的用户不可以登录FTP服务器

查看/etc/pam.d/vsftpd    凡是出现在ftpusers里的用户默认都是deny

禁用文件类型的上传eg:禁用exe文件上传至FTP服务器

(9)#deny_file={*.exe}

 在windows客户端上传exe文件查看结果  

 Permission denied 禁止上传exe文件


文章转载自一直爱流浪的猫,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论