# FTP
# yum配置
以初始状态的linux来进行此次实验
这里我使用redhat9
- 配置yum
- 配置参考
name=9-stream_BaseOS
enable=1
gpgcheck=0
baseurl=https://mirrors.ustc.edu.cn/centos-stream/9-stream/BaseOS/x86_64/os/
[AppStream]
name=9-stream_AppStream
enable=1
gpgcheck=0
baseurl=https://mirrors.ustc.edu.cn/centos-stream/9-stream/AppStream/x86_64/os/
切记需要备份
- redhat9关闭订阅
- 由于订阅我感觉下载的时候非常慢,所有我选择关闭它。
# 修改如下两个配置文件, 将enabled的值改为0
vi /etc/yum/pluginconf.d/product-id.conf
vi /etc/yum/pluginconf.d/subscription-manager.conf
- 清除缓存
- yum clean all
- 建立服务器缓存
- yum makecache
# FTP下载
yum install -y ftp
yum install vsftpd
# 创建共享的文件夹与用户
# 创建共享的文件夹
mkdir -p /test/ftp
touch /test/ftp/100
mkdir -p /test/ftp/B
touch /test/ftp/B/200
# 创建ftp用户与密码
useradd fff
passwd fff
# 给与权限
chown ftp /test/ftp/B
chown 6 /test/ftp/B
# 修改主配置
- 进行备份
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
- 因为配置中有很多
#注释的不需要的东西,我们需要用的grep -v '#'
grep -v '#' /etc/vsftpd/vsftpd.conf.bak >/etc/vsftpd/vsftpd.conf
grep -v 或 --invert-match : 显示不包含匹配文本的所有行。
- 修改
vsftpd.conf
# vsftpd.conf 在 /etc/vsftpd/
cd /etc/vsftpd/
vi vsftpd.conf
显示如下
anonymous_enable=YES # 允许匿名用户登录
local_enable=YES # 允许本地(系统)用户登录:
write_enable=YES # 允许上传:
local_umask=022 # 默认umask
dirmessage_enable=YES
xferlog_enable=YES # 把传输记录的日志保存到/var/log/vsftpd.log
xferlog_file=/var/log/xferlog
connect_from_port_20=YES # 使用20号端口传输数据
xferlog_std_format=YES
ftpd_banner=Welcome to use my test ftp server. # 欢迎标语
listen=NO # # 以standalone模式在ipv4上运行
listen_ipv6=YES # 不需要监听就注销掉,并修改listen=YES。如果你需要就保持这两行不变。
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
#匿名 需要加的
anon_root=/fhy/test/11 # 匿名登录的目录
anon_upload_enable=YES
anon_mkdir_write_enable=YES
#本地 需要加的
local_root=/fhy/test
chroot_local_user=YES
allow_writeable_chroot=YES
# 这一步可以省略不做,因为我们做的是本地实验。
# 添加以下配置参数,开启被动模式,设置本地用户登录后所在目录,以及云服务器建立数据传输可使用的端口范围值。
local_root=/var/ftp/test
allow_writeable_chroot=YES
pasv_enable=YES
pasv_address=xxx.xx.xxx.xx #请修改为您的Linux云服务器公网IP pasv_min_port=40000
pasv_max_port=45000
- 添加例外用户
您若没有设置例外用户的需求,可跳过此步骤
执行以下命令,创建并编辑 chroot_list 文件。
vim /etc/vsftpd/chroot_list
按 i 进入编辑模式,输入用户名,一个用户名占据一行
设置完成后按 Esc 并输入 :wq 保存后退出。
# 防火墙放行与安全机制
- 放行21、20端口
iptables -I INPUT -p tcp --dport 61001:62000 -j ACCEPT
iptables -I OUTPUT -p tcp --sport 61001:62000 -j ACCEPT
iptables -I INPUT -p tcp --dport 20 -j ACCEPT
iptables -I OUTPUT -p tcp --sport 20 -j ACCEPT
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I OUTPUT -p tcp --sport 21 -j ACCEPT
-
或者你直接关闭防火墙
-
setenforce 0 # 关闭linux安全机制
# 重启FTP服务
systemctl restart vsftpd
# dns指向自己
方法一
vim /etc/resolv.conf #进入后修改添加以下
nameserver 192.168.100.10 #自己的IP
方法二
vim /etc/sysconfig/network-script/ifcfg-网卡
DNS1=IP地址
两种方法,任选一种
可以有多个DNS服务器,依次按照顺序