linux基础服务FTP

FTP:文件传输协议
FTP服务作用:可以用于文件的共享存储,以及文件的传输(上传、下载)

FTP默认重要端口:
21:用于建立命令连接
20:用于传输数据文件

FTP数据传输方式(主动模式、被动模式)
主被动模式是针对FTP服务器而言,并且是针对数据传输连接而言
主动模式(默认):
客户机通过命令连接通道给服务器发送port命令,表名自己开放了N+1端口,你来找我建立连接,于是服务端会从自己的20端口向客户端的N+1端口发起TCP三次握手,建立数据连接
被动模式:
客户机通过命令连接通道给服务器发送PASV命令,表明自己想要下载或上传某文件,服务器收到后,回应一个port命令,表明自己开放了一个N端口,你来连接我,此时客户机通过自己的N+1端口向服务器发起三次握手,建立数据连接

用户类型
FTP的用户机制,用于在登录ftp服务器时进行用户名和密码的验证,一共有三种类型
1、匿名用户:可以在登录时,以用户名ftp登录服务器,密码可以为任意,但是其权限较低,安全性较差,可用于存放一些开放性资料数据
2、本地用户:通过系统自身包含用户信息进行登录,安全性有一定提高,可以访问该用户的家目录,去下载或上传数据
3、虚拟用户:拥有独立的用户名和密码配置文件,与系统自身的用户关联性不大,从而可以实现最高的等级登录认证

配置前的准备工作:
1、systemctl stop firewalld //临时关闭防火墙
2、setenforce 0 //临时关闭linux安全机制
补充:
永久关闭防火墙
systemctl disable firewalld
永久关闭安全机制:
vim /etc/selinux/config
将第7行的enforcing改成disabled

FTP的服务端程序:
vsftpd(软件名称)
FTP的客户端程序:
ftp(软件名称)

主配置文件:
/etc/vsftpd/vsftpd.conf

匿名用户配置:
家目录:/var/ftp/pub

用ftp命令登录ftp的服务端
ftp {ftp服务器IP地址}

ftp命令行的常用命令:
put:上传
get:下载(不能用于下载目录)
mkdir:建立目录
cd:切换目录
rm:删除目录
delete:删除文件
*注意:ftp服务器中的文件只能通过上传获得,不能建立新文件
mget:用于批量下载文件
prompt:交互模式切换
lcd:用于切换系统环境中的所在目录
!ls:用于查看系统环境中当前所在目录下的文件
!pwd:用于查看系统环境当前所在的路径位置
!mkdir:用于在系统环境中创建目录
!touch:用于在系统环境中创建文件

本地用户配置:
默认配置即可实现本地用户验证登录

本地用户登录后,会默认登录到相应用户的家目录当中

由于本地用户登录走默认配置时,拥有安全隐患,登录ftp服务器后,可以直接切换至服务器根目录,所以需要配置监牢模式限制目录的切换
参数:
chroot_local_user=YES
注意:vsftpd软件在2.3.5版本之后,增强了安全配置,当设置监牢模式时,不允许用户家目录拥有写权限
解决办法:
方法一:
将相应用户家目录的写权限去掉,但是此方法将只允许本地用户进行文件的下载,而无法上传和建立文件夹等修改操作

方法二:
在配置文件中添加参数:
allow_writeable_chroot=YES
此参数可以允许家目录拥有写权限的情况下使用户成功登录。

限制用于登录文件(黑白名单):ftpusers、user_list
ftpusers:黑名单文件,优先级比user_list高
user_list:默认为黑名单,可以修改为白名单
黑名单:名单中的用户不允许登录
白名单:只允许名单中的用户登录

注:在主配置文件中,添加参数userlist_deny=NO,可以将user_list文件变为白名单

虚拟用户配置:(详情见书P69)
1、配置用户名和密码的对应账号文件
vim vusers.list //编辑用户名和密码的对应配置文件
db_load -T -t hash -f vusers.list vusers.db //将普通文件转换成数据库文件

2、添加虚拟用户的映射本地用户
虚拟用户的本质:使用虚拟用户的用户名和密码用于验证,登陆以后使用映射的本地用户的家目录

3、配置pam认证,使虚拟用户可以进行登录验证

4、修改主配置文件
guest_enable=YES //启用虚拟用户功能
guest_username=virtual //设置虚拟用户映射的本地用户用户名
修改pam_service_name=vsftpd.vu

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值