温馨提示×

CentOS FTP Server如何配置IP访问控制

小樊
55
2025-08-12 18:16:00
栏目: 智能运维

在CentOS上配置FTP服务器的IP访问控制,可以通过多种方式实现,包括使用防火墙规则、vsftpd的配置文件等。以下是一个基本的步骤指南,假设你使用的是vsftpd作为FTP服务器:

1. 安装vsftpd

如果你还没有安装vsftpd,可以使用以下命令进行安装:

sudo yum install vsftpd

2. 启动并启用vsftpd服务

安装完成后,启动vsftpd服务并设置开机自启:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

3. 配置vsftpd

编辑vsftpd的配置文件 /etc/vsftpd/vsftpd.conf

sudo vi /etc/vsftpd/vsftpd.conf

在配置文件中,你可以设置一些基本的FTP选项,例如:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

4. 配置IP访问控制

方法一:使用防火墙规则

你可以使用firewalldiptables来配置IP访问控制。

使用firewalld

如果你使用的是firewalld,可以添加一个富规则来允许特定IP访问FTP端口(默认是21):

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="21" accept'
sudo firewall-cmd --reload
使用iptables

如果你使用的是iptables,可以添加规则来允许特定IP访问FTP端口:

sudo iptables -A INPUT -p tcp --dport 21 -s 192.168.1.100 -j ACCEPT
sudo service iptables save

方法二:使用vsftpd的用户列表

你可以在/etc/vsftpd/user_list文件中添加允许访问的IP地址,并在配置文件中启用用户列表:

echo "192.168.1.100" | sudo tee -a /etc/vsftpd/user_list

然后在vsftpd.conf中添加或修改以下配置:

userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO

5. 重启vsftpd服务

完成配置后,重启vsftpd服务以应用更改:

sudo systemctl restart vsftpd

6. 验证配置

确保你的FTP服务器正在运行,并且只有指定的IP地址可以访问。你可以尝试从允许的IP地址连接FTP服务器,以及从其他IP地址连接以验证访问控制是否生效。

通过以上步骤,你应该能够在CentOS上配置FTP服务器的IP访问控制。根据你的具体需求,可能需要进行一些额外的调整。

0