LinuxでFTPポートを変更する方法


FTP またはファイル転送プロトコルは、コンピュータネットワークでの標準のファイル転送として今日使用されている最も古いネットワークプロトコルの1つです。 FTPプロトコルはコマンドポートとして標準ポート 21/TCP を使用します。 Linuxには、サーバー側でFTPプロトコルの実装がたくさんありますが、このガイドでは、Proftpdサービスの実装でポート番号を変更する方法について説明します。

LinuxでProftpdサービスのデフォルトポートを変更するには、まず以下のコマンドを発行して、Proftpdのメイン設定ファイルをお気に入りのテキストエディタで開きます。開いたファイルには、次のように、インストールされている自分のLinuxディストリビューションに固有のさまざまなパスがあります。

# nano /etc/proftpd.conf            [On CentOS/RHEL]
# nano /etc/proftpd/proftpd.conf    [On Debian/Ubuntu]

proftpd.conf ファイルで、ポート21 で始まる行を検索してコメントします。行をコメントにするには、行の前にハッシュタグ(#)を追加する必要があります。

次に、この行の下に、新しいポート番号で新しいポート行を追加します。 1024 から 65535 までの任意のTCP非標準ポートを追加できます。ただし、新しいポートは、バインドしている他のアプリケーションによってシステムに取り込まれていないことが条件です。

この例では、ポート 2121/TCP にFTPサービスをバインドします。

#Port 21
Port 2121

RHEL ベースのディストリビューションでは、 Port の行はProftpd設定ファイルにはありません。ポートを変更するには、以下の抜粋に示すように、設定ファイルの先頭に新しいポート行を追加するだけです。

Port 2121

ポート番号を変更したら、 Proftpd デーモンを再起動して変更を適用し、netstatコマンドを発行してFTPサービスが新しい 2121/TCP ポートをリッスンすることを確認します。

# systemctl restart proftpd
# netstat -tlpn| grep ftp
OR
# ss -tlpn| grep ftp

CentOS または RHEL Linuxベースのディストリビューションで、 policycoreutils パッケージをインストールし、以下のSELinuxルールを追加してFTPデーモンをにバインドします。 > 2121 ポート。

# yum install policycoreutils
# semanage port -a -t http_port_t -p tcp 2121
# semanage port -m -t http_port_t -p tcp 2121
# systemctl restart proftpd

最後に、新しいFTPポートでインバウンドトラフィックを許可するためにLinuxディストリビューションのファイアウォールルールを更新します。また、FTPサーバーのパッシブポート範囲を確認し、パッシブポート範囲を反映するようにファイアウォールルールも必ず更新してください。