FTP服务
FTP(File Transfer Protocol)是一种用于在计算机之间传输文件的协议。它允许用户通过网络连接到远程服务器,并在本地计算机和服务器之间传输文件。
FTP服务器提供了存储和管理文件的功能,并允许用户通过FTP客户端连接到服务器来上传、下载、删除和重命名文件。FTP服务器通常需要进行身份验证,以确保只有授权用户可以访问和操作文件。
FTP服务通常在互联网上用于文件共享、网站维护、软件发布等场景。它具有简单易用、稳定可靠的特点,并且在各种操作系统和平台上都有广泛的支持。
一、实验目的及要求
二、实验项目背景
三、实验的环境:
四、实验步骤
一、打开VMware,并启动红帽Linux
二、启动终端
三、安装ftp服务器
安装vsftp源
离线 安装: rpm -ivh vsftpd-1.1.3-8.i386.rpm在线 安装: yum install vsftpd
修改配置文件,匿名账户具有访问、上传和创建目录的权限
使用命令: vim /etc/vsftpd/vsftpd.conf 编辑后使用命令 :wq 退出
local_enable=NO|YES # 本地登陆控制,NO表示禁止,YES表示允许anonymous_enable=yes/no # 是否允许匿名用户访问 。 yes表示允许,no表示不允许anon_upload_enable=YES/NO # 上传控制 YES表示同意,NO表示否定anon_world_readable_only=NO/YES # 下载控制,NO表示可以下载不可读文件,YES表示不能下载anon_mkdir_write_enable=YES|NO # 目录创建控制max_clients=2 # 表示最大同时访问数为2local_root=/mnt # 家目录控制,默认进入的家目录是进入登录用户的家目录write_enable=NO|YES # 写权限控制,NO表示不允许写,YES表示允许chroot_local_user=YES # 锁定用户到自己的家目录中
重启FTP服务
使用命令:systemctl restart vsftpd.service
systemctl status vsftpd.service
新建终端查看虚拟机IP
测试
![](https://img-blog.csdnimg.cn/direct/f69595935f7340819037e4b19c9ed441.png)
匿名登录ftp
1、关闭 SELinux
使用命令: setenforce 0getenfoce 查看是否关闭,Permissive 是关闭状态或者: vim /etc/sysconfig/selinux 将 SELINUX=enforcing 改为SELINUX=disabled 然后重启
2、关闭 防火墙
使用命令: systemctl stop firewalld #关闭防火墙
3、修改 vsftpd 配置文件
使用命令:vim /etc/vsftpd/vsftpd.conf,修改
anon_upload_enable=YES
anon_mkdir_write_enable=YES
4、修改本地上传目录权限
使用命令: cd /var/ftp/pubmkdir chmod 777 /var/ftp/pub/uploadchmod 777 /var/ftp/pub
5、vsftpd.conf 配置文件里新写入此参数
userlist_deny=NO 表示允许 user_list 的用户登录,则user_list变白名单。/etc/vsftpd/ftpusers ##放入的用户永久黑名单/etc/vsftpd/user_list ##放入的用户默认黑名单
测试
需要用户名与密码才可以登录
虚拟用户访问
1、建立认证文件模板
建立模板需要在 /etc/vsftp/ 的目录下完成使用命令: vim /etc/vsftpd/ftp_auth_file, 创建3个虚拟用户和密码
2、加密认证文件
使用命令db_load -T -t hash -f /etc/vsftpd/ftp_auth_file /etc/vsftpd/ftp_auth_file.db把写出的文件,转换成系统可识别的认证文件
3、建立pam认证文件
4、建立文件 vim /etc/pam.d/test
test这个文件名可以自定义
添加account required pam_userdb.so db=/etc/vsftpd/ftp_auth_file
auth required pam_userdb.so db=/etc/vsftpd/ftp_auth_file
5、编辑vsftp.conf主配置文件
使用命令:vim /etc/vsftpd/vsftpd.conf
添加pam_service_name=test:指定认证的文件,之前用的是/etc/pam.d/vsftp
guest_enable=YES:指定虚拟用户功能开启
guest_username=ftp:指定虚拟用户在ftp服务器上的用户身份,ftp的家目录就是/var/vsftp
重启服务
systemctl restart vsftpd