基于Linux系统ftp的部署

FTP ( 文件传输协议 ) :是 INTERNET 上仍常用的最老的网络协议之一 , 它为系统提供了通过网络与远程服务器进行传输的简单方法,在 RED HAT ENTREPRISE LINUX 6 中,FTP 服务器包的名称为 VSFTPD , 它代表 Very Secure File TransferProtocol Damon 服务器名称也叫做 vsftpd默认配置文件让 ANONYMOUS 用户只能下载位于 CHROOT 目录中的内容。 /var/ftp/ 这意味着远程 FTP客户端能以用户anonymous 或 ftp 身份连接到服务器 ( 无需密码 ), 并从 ftp服务器上的 /var/ftp/ 目录下载文件 ( 其本地 ftp 用户可以读取这些文件 )

ftp:文本传输协议       http:超文本传输协议

ps:实验之前 vim /etc/sysconfig/selinux ,修改SELINUX=disabled;lftp和vsftpd不一样,vsftpd是服务端需要安装的服务,lftp是客户端需要安装的服务

基于Linux系统ftp的部署_第1张图片

报错id的解析
500 文件系统权限过大
530 用户认证失败
550 服务本身功能未开放
553 本地文件系统权限过小

一、ftp的部署及配置

1.ftp的部署

yum install vsftpd  -y      ##提前配置好yum源
systemctl start vsftpd
systemctl enable vsftpd
firewall-cmd --list-all
firewall-cmd --permanent --add-service=ftp   ##让防火墙允许此传输协议
firewall-cmd --reload       ##防火墙重读配置

基于Linux系统ftp的部署_第2张图片

用客户端主机测试连接

lftp  服务端ip
ls        ##若不显示文件显示响应时间则不通,使用lftp连接时默认进入的是服务端的/var/ftp/

ftp配置文件的几个重要参数
anonymous_enable=YES 匿名用户是否可以登陆
local_enable=YES|NO
本地用户是否可以登陆
write_enable=YES|NO
本地用户能否可写
anon_world_readable_only=YES|NO
匿名用户是否可以下载
anon_other_write_enable=YES|NO
匿名用户是否可以删除
anon_mkdir_write_enable=YES|NO
匿名用户是否可以新建目录

2.匿名用户家目录的更改

vim   /etc/vsftpd/vsftpd.conf   ##设定家目录 
lftp 172.25.254.168
ls      ##查看家目录下的文件
基于Linux系统ftp的部署_第3张图片
3.匿名用户的上传
vim /etc/vsftpd/vsftpd.conf  
write_enable=YES
anon_upload_enable=YES   
systemctl restart vsftpd 
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub

ps:上传文件的时候必须在pub目录下,匿名用户是否可以上传的前提是本地用户可写

4.匿名用户最大上传速率的更改


anon_max_rate=102400   ##单位为bytes,改为100k
systemctl restart vsftpd
基于Linux系统ftp的部署_第4张图片

5.uamsk值的设置

基于Linux系统ftp的部署_第5张图片

vim /etc/vsftpd/vsftpd.conf    ##修改umask值为644
systemctl restart vsftpd

6.限制本地用户浏览目录

vim /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd

测试:

基于Linux系统ftp的部署_第6张图片

vim   /etc/vsftpd/vsftpd.conf   ##编辑配置文件,参数修改为YES
chmod   u-w   /home/*     ##去掉写的权限
systemctl restart vsftpd

测试:

7.用户黑白名单的设定

  • 黑名单的设定(锁定在家目录)
vim /etc/vsftpd/vsftpd.conf    
vim   /etc/vsftpd/chroot_list    ##编辑名单
systemctl restart vsftpd
基于Linux系统ftp的部署_第7张图片


测试:

基于Linux系统ftp的部署_第8张图片

  • 白名单的设定
vim   /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd

测试:

基于Linux系统ftp的部署_第9张图片

8.用户黑白名单的设定

  • 黑名单的设定1(无法登录)
vim /etc/vsftpd/ftpusers    ##设置永久黑名单

基于Linux系统ftp的部署_第10张图片

测试:


  • 黑名单的设定2(无法登录)
vim   /etc/vsftpd/vsftpd.conf
vim   /etc/vsftpd/user_list     ##编辑名单,此名单可以通过改变配置文件的参数来确定是黑名单还是白名单
systemctl restart  vsftpd

测试:

  • 白名单的设定

测试:

基于Linux系统ftp的部署_第11张图片


二、ftp虚拟用户的建立及设定

1.创建虚拟帐号身份

yum install pam
vim /etc/vsftpd/userdb   ##编辑用户信息,文件名自定义
基于Linux系统ftp的部署_第12张图片
db_load -T -t hash -f userdb userdb.db    ##给用户信息文件加密,hash为加密方式,userdb为被加密文件,userdb.db为加密后生成的文件
vim /etc/vsftpd/ftpuser     ##设定用户登陆认证方式,文件名自定

vim /etc/vsftpd/vsftpd.conf

基于Linux系统ftp的部署_第13张图片

测试:

2.虚拟用户家目录的分别指定

mkdir  /ftpdir
mkdir  /ftpdir/user{1..3}
touch  /ftpdir/user1/file1
touch  /ftpdir/user2/file2
touch  /ftpdir/user3/file3
vim  /etc/vsftpd/vsftpd.conf   

基于Linux系统ftp的部署_第14张图片

测试:

3.虚拟用户ftp配置文件的独立设定

mkdir  /ftpdir/user{1..3}/pub
vim  /etc/vsftpd/vsftpd.conf
基于Linux系统ftp的部署_第15张图片

mkdir -p  /etc/vsftpd/userconf
vim /etc/vsftpd/userconf/user1

chgrp ftp /ftpdir/user1/pub
chmod 775 /ftpdir/user1/pub




你可能感兴趣的:(基于Linux系统ftp的部署)