配置Linux FTP服务器以支持IPv6涉及几个步骤,包括安装FTP服务器软件、配置服务器以监听IPv6地址、设置防火墙规则以及确保DNS解析正确。以下是一个基本的指南,使用vsftpd作为FTP服务器软件:
首先,确保你的系统上已经安装了vsftpd。你可以使用包管理器来安装它。
sudo apt update
sudo apt install vsftpd
sudo yum install vsftpd
编辑vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
。
sudo nano /etc/vsftpd/vsftpd.conf
确保以下配置项存在并正确设置:
listen=YES
listen_ipv6=YES
如果你希望vsftpd同时监听IPv4和IPv6,可以添加或确保存在以下行:
listen=YES
listen_ipv6=YES
确保你的防火墙允许FTP流量通过。你可以使用 iptables
或 firewalld
来配置防火墙规则。
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
sudo firewall-cmd --permanent --add-service=ftp
sudo firewall-cmd --reload
如果你的系统启用了SELinux,可能需要调整SELinux策略以允许FTP流量。
sudo setsebool -P ftp_home_dir on
sudo setsebool -P allow_ftpd_full_access on
保存并关闭配置文件后,重启vsftpd服务以应用更改。
sudo systemctl restart vsftpd
使用FTP客户端测试连接,确保服务器支持IPv6。
ftp6 your_server_ipv6_address
确保你的DNS记录正确解析到服务器的IPv6地址。你可以使用 dig
或 nslookup
来检查。
dig AAAA your_server_domain_name
如果你需要通过防火墙进行被动模式连接,还需要配置被动模式的端口范围。
编辑 /etc/vsftpd/vsftpd.conf
并添加或修改以下行:
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
然后重启vsftpd服务:
sudo systemctl restart vsftpd
确保防火墙允许这些被动模式的端口通过。
通过以上步骤,你应该能够成功配置Linux FTP服务器以支持IPv6。