FTP文件传输协议

传输模式

FTP支持两种模式:Standard (PORT方式,主动方式),Passive (PASV,被动方式)。

Port模式

FTP 客户端首先和服务器的TCP 21端口建立连接,用来发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。FTP server必须和客户端建立一个新的连接用来传送数据。

Passive模式

建立控制通道和Standard模式类似,但建立连接后发送Pasv命令。服务器收到Pasv命令后,打开一个临时端口(端口号大于1023小于65535)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口传送数据。

很多 防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。


配置 

安装

yum install -y vsftpd

 关闭防火墙

systemctl stop firewalld
setenforce 0

设置服务启动

systemctl enable vsftpd
#开机自启动
systemctl start vsftpd
#开启vsftpd
systemctl status vsftpd
#查看vsftpd的状态

 修改配置文件(匿名访问)

vim  /etc/vsftpd/vsftpd.conf


测试

在/var/ftp/pub/下创建一个txt文本文件,在windows的此电脑中,输入ftp服务器的地址

 成功!


账户密码登录FTP

进入/etc/vsftpd/vsftpd.conf对配置文件进行设置

vim /etc/vsftpd/vsftpd.conf

 进入/etc/vsftpd/chroot_list增加被限制登录的用户名

vim /etc/vsftpd/chroot_list
 
paul    #登录用户名

配置文件黑名单 白名单

/etc/vsftpd/user_list默认为黑名单,去掉if userlist_dent=NO的注释,开启白名单,只有以下用户可以进行登录,我们加入用户quota到黑名单中。

echo  quota  >>  /etc/vsftpd/user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
quota

quota用户被禁止登录

在/etc/vsftpd/vsftpd.conf中配置,重启服务后quota登录成功

vim /etc/vsftpd/vsftpd.conf
userlist_enable=YES
userlist_deny=NO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会调制解调的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值