运维学习 unit 14 ftp服务的部署和安全性设置

1.FTP

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。

2.部署ftp服务器

yum查找vsftpd服务和lftp服务
运维学习 unit 14 ftp服务的部署和安全性设置
install安装两者
开启ftp服务并设置为开机自启
运维学习 unit 14 ftp服务的部署和安全性设置
检查内核加强型防火墙是否开启,用getenforce检查图中是关闭状态,若是显示Enforcing则需要手动关闭,编辑selinux配置文件,将selinux的状态改为disabled
运维学习 unit 14 ftp服务的部署和安全性设置
编辑selinux配置文件 vim /etc/sysconfig/selinux

在客户端安装lftp服务后尝试连接至服务器的ip
运维学习 unit 14 ftp服务的部署和安全性设置

3.FTP服务的基本信息

软件安装包:vsftpd
默认发布目录:/var/ftp
协议接口:21/tcp
服务配置文件:vim /etc/vsftpd/vsftpd.conf
报错id的解析:
500 文件系统权限过大
530 用户认证失败
550 服务本身功能未开启
553 文件系统权限过小

4安全性设置

为服务器新建一个用户useradd westos
新建用户为westos,密码为westos

注意:使用lftp服务连接时,默认是用匿名用户访问服务器,使用服务器本地用户登陆时需要添加 “-u 用户名”

运维学习 unit 14 ftp服务的部署和安全性设置
配置文件第12行 anonymous_enable=YES|NO    ##设置匿名用户是否可以登陆
配置文件第16行 local_enable=YES|NO    ##本地用户是否可以登陆
配置文件第19行 write_enable=YES|NO   ##ftp是否对登陆用户可写
配置文件第29行 anon_upload_enable=YES|NO   ##匿名用户是否能上传
配置文件第23行 local umask=xxx ##更改本地用户上传文件权限
配置文件第33行 anon_mkdir_write_enable=YES|NO   ##匿名用户是否可以建立目录
第12行改为no后,匿名用户无法登陆
运维学习 unit 14 ftp服务的部署和安全性设置
第16行改为no后,本地用户无法登陆
运维学习 unit 14 ftp服务的部署和安全性设置
第19行改为no后,登陆用户没有对文件的书写权限(比如删除)
第29行去掉注释同时可写权限开放时,匿名用户可以上传文件,但是会显示用户权限过小,此时需要修改匿名用户目录的所在组并给组添加可写的权限
运维学习 unit 14 ftp服务的部署和安全性设置
第33行去掉注释后,匿名用户可以建立目录
运维学习 unit 14 ftp服务的部署和安全性设置
添加第30行 anon_world_readable_only=NO|YES ##参数NO表示匿名用户可以下载
添加第31行 anon_other_write_enable=YES|NO ##是否可以删除别的用户的文件
运维学习 unit 14 ftp服务的部署和安全性设置
添加第32行 anon_max_rate=102400 ##限制匿名用户下载速率最大值为102400bits
添加第33行 max_clients=1 ##设定最多有1个用户可以连接服务器
添加第17行 local_root=/directory ##更改登陆用户家目录
运维学习 unit 14 ftp服务的部署和安全性设置

注意:给家目录的子目录添加权限所以只能往家目录的子目录中上传文件

注意:默认登录用户家目录为 /var/ftp

5设置黑白名单

1)vim  /etc/vsftpd/ftpusers   用户永久黑名单
2)vim  /etc/vsftpd/user list   用户临时黑名单
运维学习 unit 14 ftp服务的部署和安全性设置
(配置文件最后的userlist_enable=YES)
3)修改/etc/vsftpd/vsftpd.conf——>userlist_enable=NO时
   /etc/vsftpd/user list 就变成用户白名单
   (即只有存在这个文件里的用户才可以登录,但若是该用户同时出现在用户永久黑名单中则也无法登陆)
   运维学习 unit 14 ftp服务的部署和安全性设置