FTP服务基础及安全配置
21号端口控制链接、20号端口数据连接(模式:主动、被动)
FTP服务器端配置
安装vsftpd
静态ip设置如下:
客户端配置
安装ftp
IP地址设置
查看与服务器端连通性
vsftpd独立运行
测试
在服务器端开启httpd服务,关闭防火墙
在服务器端创建一个张三用户,密码123456,在客户端登录如下
接下来可以登入客户端的浏览器上,如下图所示:
以上情况可知:ftp服务在默认情况下是允许使用服务器所在主机上的用户名和密码来进行远程登陆的,存在很大的安全隐患。只要攻击者获得服务器所在主机上的任一账户,就能远程访问FTP服务器主机的根目录。
因此,应该避免使用本地账户来登录ftp服务器;可以采用创建虚拟的ftp用户,来防止攻击者窃取本地账户:
虚拟FTP用户
虚拟用户的本地用户映射:-d 指定用户登入时的主目录 -s 指定用户登入后所使用的shell
虚拟用户的数据库文件
将新建的txt文件转化为一个数据库文件并存入配置文件中
虚拟用户的身份认证文件
对验证登陆配置文件进行备份操作,以便日后使用
虚拟用户配置文件
去掉注释如下
需要添加的内容:
跳转到vsftp目录下,建立虚拟用户文件vuser_conf
重启ftp服务
客户端测试
服务器所在主机的本地账户已经无法登录到ftp服务器
用虚拟账户登录ftp服务器,登陆后发现不能打开服务器所在主机的根目录了,安全性有所提高
对虚拟账户的权限进行设置。
对alice只读权限
对ben 读、上传、新建
对John读、上传、删除
对mike没有赋予任何权限
服务器创建一个文本文件
虚拟用户权限测试
对Alice只读进行验证
Ben读、上传、新建
服务器端查看/ftphome/vuser下:
John读、上传、删除
服务器端查看/ftphome/vuser下:
Mike未赋予任何权限
注:测试文件类型命令#file login.txt anon表示匿名