网站搜索

在 Linux 中将 FTP 默认端口更改为自定义端口


在之前的教程中,我们了解了如何更改 Apache Web 服务器默认端口。在本指南中,我们将学习如何更改 Linux 中的 FTP 默认端口。如果您还没有阅读我们之前的文章,请访问以下链接了解如何更改 Apache Web 服务器默认端口。

  • 如何将 Apache 默认端口更改为自定义端口

将 FTP 默认端口更改为自定义端口

确保您已安装 VSFTPD 服务器并且其服务正在运行。

然后编辑 VSFTPD 配置文件并更改默认端口,如下所述。

在 Debian/Ubuntu 上:

编辑 /etc/vsftpd.conf 文件,

sudo vi /etc/vsftpd.conf

在 RHEL/CentOS/Fedora/AlmaLinux/Rocky Linux 上:

编辑 /etc/vsftpd/vsftpd.conf 文件,

sudo vi /etc/vsftpd/vsftpd.conf

找到以下行。如果没有找到,请添加。

listen_port=21

并将 FTP 默认端口 21 更改为自定义端口,例如 210

listen_port=210

保存并关闭文件。重新启动 vsftpd 服务以使更改生效。

在 RHEL 及其克隆版本中,确保 SELinux 和防火墙中未阻止端口号 210

sudo semanage port -a -t ftp_port_t -p tcp 210

如果找不到semanage命令,请安装以下软件包:

sudo yum install policycoreutils-python

要允许端口 210 通过防火墙,请执行以下步骤。

在 RHEL 7/ CentOS 7 中:

sudo firewall-cmd --permanent --add-port=210/tcp
sudo firewall-cmd --reload

在 RHEL 6/CentOS 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 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): ostechnix

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),然后在相应字段中输入用户名、密码和自定义端口,然后单击连接按钮。

使用 Filezilla 访问 FTP 服务器

要从浏览器访问 FTP 服务器,URL 必须是:

ftp://:<端口号>

或者

ftp://<登录名>:<密码>@IP 地址:<端口号>/

我们将在下面链接的下一篇文章中了解如何更改 SSH 默认端口。

  • 如何将 SSH 默认端口更改为自定义端口