如何将FTP默认端口更改为自定义端口
在我们以前的教程中,我们看到了如何更改Apache Web Server默认端口。
在本教程中,我们将学习如何在Linux中更改FTP默认端口。
将FTP默认端口更改为自定义端口
确保已安装VSFTPD服务器并运行其服务。
然后编辑VSFTPD配置文件并更改如下所述的默认端口。
在Debian/Ubuntu:
编辑/etc/vsftpd.conf文件,
$sudo vi /etc/vsftpd.conf
在Rhel/CentOS/Fedora/Scientific Linux上:
编辑/etc/vsftpd/vsftpd.conf文件,
$sudo vi /etc/vsftpd/vsftpd.conf
找到以下行。
如果找不到,请添加它。
listen_port=21
并将FTP默认端口21更改为自定义端口,例如210.
listen_port=210
保存并关闭文件。
重新启动VSFTPD服务以生效更改。
在Rhel/CentOS/Scientific Linux系统中,确保在SELinux和防火墙中封锁端口号210.
$sudo semanage port -a -t ftp_port_t -p tcp 210
如果找不到SemaNage命令,请安装以下包:
$sudo yum install policycoreutils-python
通过防火墙允许端口210执行以下步骤。
在Rhel 7/CentOS 7/Scientific Linux 7:
$sudo firewall-cmd --permanent --add-port=210/tcp
$sudo firewall-cmd --reload
在Rhel 6/CentOS 6/Scientific Linux 6:
$sudo vi /etc/sysconfig/iptables
并添加新的自定义端口线:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 210 -j ACCEPT
保存并退出文件并重新启动iptables服务。
$sudo service iptables restart
最后重新启动VSFTPD服务。
$sudo systemctl restart vsftpd
或者
$sudo service vsftpd restart
现在使用命令验证端口:
$sudo netstat -tulpn | grep :210
示例输出:
tcp6 0 0 :::210 :::* LISTEN 2610/vsftpd
如果在CentOS/RHEL中找不到NetStat命令,请安装以下包。
$sudo yum install net-tools
现在,我们可以使用URL访问所有客户端的FTP服务器:FTP <FTP-Server-IP> <端口号>
例子:
$ftp 192.168.1.150 210
其中192.168.1.150是我的FTP服务器的IP地址,210是FTP自定义端口。
示例输出:
Connected to 192.168.1.150 (192.168.1.150). 220 (vsFTPd 3.0.2) Name (192.168.1.150:root): theitroad 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp>
在上面的输出中看到,我们使用自定义端口210访问了FTP服务器。
我们可以使用我们选择的任何端口号。
但是,只需确保任何其他服务不使用自定义端口。
使用FTP客户端或者Web浏览器访问FTP服务器
类似于CLI方法,我们需要在通过FTP客户端或者Web浏览器访问FTP服务器时提及自定义端口号。
打开FTP客户端,例如FileZilla,以及在相应字段中输入用户名,密码和自定义端口,然后单击"连接"按钮。
要从浏览器访问FTP服务器,必须是:
FTP://<IP-Address>:<port-number>
或者
ftp://<登录名>:<password> @ ip-address:<port-number> /