ftp服务

本文详细介绍了如何在REDHAT ENTERPRISE Linux 7上安装和配置FTP服务器VSFTPD,包括匿名用户和本地用户的设定,如匿名用户的上传、家目录修改、权限设置等,以及虚拟用户的创建和权限独立设定,确保FTP服务的安全与高效运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.ftp

ftp是常用的最老的网络传输协议之一,在REDHAT ENTERPRISE Linux 7中,为系统提供了通过网络与远程服务器进行传输的简单方法。ftp服务器包的名称为VSFTPD(Very Secure File Transfer Protocol Damon)。默认/目录为/var/ftp

2.安装ftp

首先关闭内核防火墙,设置防火墙策略允许ftp服务

setenforce 0 | vim /etc/sysconfig/selinux 中设置SElinux=disable ##关闭内核防火墙 ,设置完后需要reboot
firewall-config ##打开图形界面,选择permanent,ftp然后reload firewalld

这里写图片描述
这里写图片描述
安装vsftpd
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
lftp ip ##能登陆并且显示,表示安装成功
这里写图片描述
这里写图片描述
这里写图片描述
匿名登陆成功!

3.vsftpd文件信息

/var/ftp ##默认发布目录
/etc/vsftpd ##配置目录
/etc/vsftpd/vsftpd.conf

4.vsftpd服务的配置参数

1匿名用户设定

1>vim /etc/vsftpd/vsftpd.conf
12 anonymous_enable=YES|NO ##匿名用户登陆限制,YES允许匿名用户登陆,NO拒绝匿名用户登录
2>systemctl restart vsftpd
这里写图片描述
匿名用户无法登陆,而本地用户是可以登陆的
这里写图片描述

<匿名用户上传>

vim /etc/vsftpd/vsftpd.conf
12 anonymous_enable=YES
19 write_enable=YES
29 anon_upload_enable=YES ##上传
这里写图片描述
匿名用户上传失败
这里写图片描述
查看目录权限发现,只有root用户有w的权限,为了安全,将/var/ftp/pub的组更改为ftp,然后更改目录权限,更改完之后,匿名用户就可以上传

chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub

这里写图片描述

<匿名用户家目录修改>

1>mkdir /westos ##创建家目录
2>cp /etc/passwd /westos
3>vim /etc/vsftpd/vsftpd.conf
anon_root=/westos ##修改匿名用户家目录
4>systemctl restart vsftpd
匿名登陆进入/westos
这里写图片描述

<匿名用户上传文件默认权限修改>

vim /etc/vsftpd/vsftpd.conf
anon_umask=xxx ##匿名用户上传文件的默认权限
设置 anon_umask=022,上传文件的权限为644
这里写图片描述

<匿名用户建立目录>

anon_mkdir_write_enable=YES|NO
这里写图片描述
这里写图片描述

<匿名用户下载>

添加anon_world_readable_only=YES|NO ##设定参数值为no表示匿名用户可以下载,系统默认匿名用户不能下载文件
这里写图片描述
这里写图片描述
这里写图片描述

<匿名用户删除>

anon_other_write_enable=YES|NO ##默认NO,不可删除,当更改为YES后,匿名用户可删除/var/ftp/pub/的文件
这里写图片描述
这里写图片描述

<匿名用户使用的用户身份修改>

chown_uploads=YES
chown_username=student ##改变所有人
这里写图片描述

<最大上传速率>

anon_max_rate=102400 ##默认单位为字节

<最大链接数>

max_clients=2

2.本地用户设定

local_enable=YES|NO ##本地用户登陆限制
write_enable=YES|NO ##本地用户写权限限制
本地用户默认是可以登陆的
这里写图片描述
设置本地用户无法登陆local_enable=NO
这里写图片描述

<本地用户家目录修改>

本地用户登陆时默认进入其家目录
local_root=/westos
这里写图片描述

<本地用户上传文件权限>

local_umask=xxx
修改local_umask=002,上传/etc/group,group的权限变为664
这里写图片描述

<限制本地用户浏览/目录>

1.所有用户被锁定到自己的家目录中
chroot_local_user=YES
chmod u-w /home/student ##之前权限太大,需要缩小
默认本地用户是可以访问/的
这里写图片描述
这里写图片描述
将用户锁定在自己的家目录
这里写图片描述
这里写图片描述

2.用户黑名单(访问/)建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list ##默认无此名单
在黑名单中加入student,student无法访问/
这里写图片描述
linux用户可以访问/
这里写图片描述

3.用户白名单建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
将student用户加入白名单后,只有student用户可以访问/
这里写图片描述
这里写图片描述
linux用户不能访问/
这里写图片描述

<限制本地用户登陆>

vim /etc/vsftpd/ftpusers ##用户永久黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单
将student用户加入永久黑名单
这里写图片描述
将student加入临时黑名单后,student无法登陆
用户白名单设定
1>vim /etc/vsftpd/vsftpd.conf
userlist_deny=NO
2>vim /etc/vsftpd/user_list ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
将student用户加入白名单,测试结果:
这里写图片描述

当同时将student加入白名单与永久黑名单后,其他用户无法登陆

ftp虚拟用户的设定

1.创建虚拟帐号身份

1>vim /etc/vsftpd/ftpvuser ##(文件名称任意)创建虚拟用户信息文件
user1 ##用户
123 ##密码
user2
123
user3
123

2>db_load -T -t hash -f /etc/vsftpd/ftpvuser ftpvuser.db ##加密虚拟帐号文件

3>vim /etc/pam.d/ckvsftpd ##(文件名称任意)创建认证文件
account required pam_userdb.so db=/etc/vsftpd/loginusers
auth required pam_userdb.so db=/etc/vsftpd/loginusers

4>vim /etc/vsftpd/vsftpd.conf ##设置配置文件
pam_service_name=ckvsftpd
guest_enable=YES
这里写图片描述

2.虚拟帐号身份指定

vim /etc/vsftpd/vsftpd.conf
guest_username=ftpuser
chmod u-w /home/ftpuser ##500错误
这里写图片描述
设置 guest_username=student,tfpvuser直接登陆到student的家目录
这里写图片描述

3.虚拟帐号家目录独立设定

vim /etc/vsftpd/vsftpd.conf
local_root=/ftpvuserhome/USERusersubtoken=USER

1)建立虚拟用户家目录

1>mkdir /ftpvuserhome
2>chmod g+s /ftpvuserhome
3>mkdir /ftpvuserhome/user{1..3}
4>touch /ftpvuserhome/user1/file{1..3}
这里写图片描述
这里写图片描述

2)更改配置文件

vim /etc/vsftpd/vsftpd.conf
local_root=/ftpvuserhome/USERusersubtoken=USER
这里写图片描述
lftp -u user1进入自己的家目录
这里写图片描述

4.虚拟帐号配置独立权限

1>vim /etc/vsftpd/vsftpd.conf ##设置配置文件,添加虚拟用户权限配置目录
user_config_dir=/etc/vsftpd/vuserconf
2> mkdir /etc/vsftpd/vuserconf ##创建配置目录

3>vim /etc/vsftpd/vuserconf/user1##创建指定用户配置文件,设定独立权限
在此文件中设定配置文件中的所有参数,此文件的优先级高
设置user1的有上传的独立权限,shell下执行结果
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值