我的ftp服务器为centos7
使用yum安装的vsftpd软件 (如果你需要离线yum库,而不会搭建可以查看)
Linux:rpm查询安装 && yum安装_鲍海超-GNUBHCkalitarro的博客-CSDN博客
安装软件 配置环境
其次是Linux的防火墙和selinux要关闭 如果你不会的话请查看↓
Linux:centos 关闭 防火墙 && 关闭SELinux && 配置临时ip_鲍海超-GNUBHCkalitarro的博客-CSDN博客
yum -y install vsftpd
# 安装ftp软件
rpm -qc vsftpd
查看软件的配置文件
其中的 /etc/vsftpd/vsftpd.conf 为主配置文件
查看默认配置文件
默认的ftp服务文件在
cd /var/ftp/pub/
cat /etc/vsftpd/vsftpd.conf | grep -v "^#"
# 查看一下 默认配置文件
anonymous_enable=YES 开启匿名用户访问;
local_enable=YES 启用本地系统用户访问;
write_enable=YES 本地系统用户写入权限;
local_umask=022 本地用户创建文件及目录默认权限掩码;
dirmessage_enable=YES 打印目录显示信息,通常用于用户第一次访问目录时,信息提示;
xferlog_enable=YES 启用上传/下载日志记录;
connect_from_port_20=YES FTP使用20端口进行数据传输;
xferlog_std_format=YES 日志文件将根据xferlog的标准格式写入;
listen=NO Vsftpd不以独立的服务启动,通过Xinetd服务管理,建议改成YES;
listen_ipv6=YES 启用IPV6监听;
pam_service_name=vsftpd 登录FTP服务器,依据/etc/pam.d/vsftpd中内容进行认证;
userlist_enable=YES Vsftpd.user_list和ftpusers配置文件里用户禁止访问FTP;
tcp_wrappers=YES 设置vsftpd与tcp wrapper结合进行主机的访问控制,Vsftpd服务器检查/etc/hosts.allow 和/etc/hosts.deny中的设置,来决定请求连接的主机,是否允许访问该FTP服务器。
配置匿名登录
我们配置匿名登录不用上面的默认文档 先把原配置文件备份一下
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
# 将vsftpd.conf 改名为 vsftpd.conf.bak 当作备份
cp /etc/vsftpd/vsftpd.conf.bak /etc/vsftpd/vsftpd.conf
# 再复制一份 vsftpd.conf
把上图所有的配置文件清除 清空
然后填入
# 全局配置
listen=YES
listen_address=192.168.1.1
listen_port=21
connect_from_port_20=YES
#pasv_min_port=2222
#pasv_max_port=2225
write_enable=YES
xferlog_enable=YES
xferlog_std_format=YES
pam_service_name=vsftpd
#userlist_enable=YES
tcp_wrappers=YES
#max_clients=0
#max_per_ip=0
# 匿名用户配置
anonymous_enable=YES
anon_umask=022
anon_root=/var/ftp
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
#anon_max_rate=0
第三行一定要修改上你的ip 我的是192.168.1.1 所以写上的192.168.1.1
然后保存退出
由于放文件的位置是root所属人 权限是755
为了匿名 我们要把所属人改为ftp用户
systemctl start vsftpd
# 开启服务
Linux 如果要访问ftp要安装ftp这个软件
yum -y install ftp
# ftp + ip
# ftp 192.168.1.1