linux之ftp服务

本文详细介绍了在Linux系统中如何部署和配置FTP服务,特别是使用vsftpd服务。内容涵盖FTP服务的基本信息、匿名用户和本地用户的设置,包括允许登录、上传权限、家目录设定、文件权限及限制等。此外,还涉及到虚拟用户的创建和授权,确保FTP服务的安全和高效运行。
摘要由CSDN通过智能技术生成

1.FTP服务的定义

        FTP(文件传输协议)是internet上仍常用的最老的网络协议之一,他为系统提供了通过网络
与远程服务器进行传输的简单方法;

2.ftp协议提供的软件:

在rhel7中:
vsftpd(Very Secure File TransferProtocolDamon )

3.服务基本信息

软件安装包:       vsftpd
软件默认发布目录:  /var/ftp
协议接口:         21/tcp
服务配置文件:      /etc/vsftpd/vsftpd.conf

主动:访问通过21接口,传输数据通过20接口

被动(默认):访问通过21接口,传输文件通过一个随机的大于1024的接口,这样更安全;

4.部署ftp服务

(前提)有已经配置好的yum源仓库;

yum install vsftpd.x86_64 lftpd.x86_64 -y    #安装相关软件
systemctl start vsftpd                       #打开vsftpd服务
systemctl enable vsftpd                      #设置开机自启动
firewall-cmd --permanent --add-server=ftp    #给防火墙中添加许可(ftp)
firewall-cmd --reload                        #重新加载防火墙
也可以用图形的方式添加:
firewall-config
在永久设定里添加ftp,然后选择重新加载;

然后测试,用另外一台主机:

lftp 172.25.254.111                 #匿名用户登录
ls    

1.如图:

这里我已经安装完成;

2.打开并查看服务状态:

3.防火墙设置许可ftp,并且重新加载;

4.设置开机ftp服务自启:

5.

getenforce #如果为disable不用设置
否则
vim /etc/sysconfig/selinux  改SELINUX=Disable
reboot

如图:

之后再重启;

6.开始测试:

5.对匿名用户的设置

编辑vsftpd的配置文件:

vim /etc/vsftpd/vsftpd.conf

1.匿名用户是否可以登录

anonymous_enable=YES | NO

如图,改为不允许:

则:

2.

2.匿名用户是否可以上传

write_enable=YES
anon_upload_enable=YES

未修改之前:

修改:(然后重启服务)

给权限:

修改之后:

3.匿名用户家目录修改

先创建一个家目录:

再编辑配置文件:

测试:

4.匿名用户上传文件默认权限修改

默认umask=066

修改为770:

结果:

5.匿名用户建立目录

anon_mkdir_write_enable=YES | NO

如图:

结果

6.匿名用户下载(下载就是复制,可读的权力)
 

anon_world_readable_only=NO|YES #NO表示可下载

编辑:

结果:

7.匿名用户删除
 

anon_other_write_enable=YES|NO

编辑:

结果:

8.匿名用户使用的用户身份修改

chown_uploads=YES
chown_username=student
chown_upload_mode=0644

9.最大上传速率(我想到了某云盘)

连接客户个数限制

anon_max_rate=102400

max_clients=个数

编辑:

结果:

茶熬过两个用户连接时显示失败;

6.对本地用户的设置

1.本地用户是否可以登录

local_enable=YES|NO 是|否

 

 

2.ftp是否对登录用户可写

write_enable=YES|NO

改为不允许:

结果:

 

3.本地用户家目录修改

local_root=/westos

3.本地用户上传文件权限

local-umask=xxx

结果:

4.限制本地用户浏览根目录

chroot_local_user=YES (将所有用户都锁住)

默认情况下:

 

之后:

5.用户浏览黑名单建立

< 1>.在shell中
vim /etc/vsftpd/chroot_list 添加某些用户
<2>.在配置文件里
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

编辑配置文件:

添加用户到名单:

测试:不可浏览

6.白名单建立:

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list 只有白名单的人不会被锁住

编辑:

查看:

测试:

7.限制本地用户登录

vim /etc/vsftpd/ftpusers #用户黑名单

在其中添加用户名即可永久限制该用户登录

8.临时限制登录

在配置文件里编辑:
userlist_deny=NO

7.虚拟用户的设定

1.创建虚拟用户

vim /etc/vsftpd/westosfile #文件名称任意
=
user1  
123    
user2
123
user3
123

db_load -T -t hash -f /etc/vsftpd/westosfile /etc/vsftpd/westosfile.db  #加密

结果:

 

创建认证策略:

vim /etc/pam.d/westos  #文件名称随意

account  required  pam_userdb.so  db=/etc/vsftpd/westosfile
auth   required   pam_userdb.so db=/etc/vsftpd/westosfile

编辑配置文件:

pam_service_name=westos
guest_enable=YES

测试:

8.虚拟用户的授权:

1.虚拟用户身份指定

guest_username=ftpuser
chmod u-w /home/ftpuser

2.虚拟用户家目录独立设定

mkdir /var/ftpuserdir/user{1..3} -p
mkdir /var/ftpuserdir/user{1..3}/pub -p
touch /var/ftpuserdir/user1/user2file
touch /var/ftpuserdir/user2/user2file
touch /var/ftpuserdir/user3/user3file

 

 

编辑:

在shell中:

3.虚拟账号配置独立

测试:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值