安全で暗号化された接続を介してマシン間でファイルを転送するためにデフォルトのSFTPポートを変更するための包括的なガイド
SFTPは 安全なファイル転送プロトコル。このプロトコルは、通常のFTPよりも優れたセキュリティと脆弱性からの保護を提供するSecure Shell(SSH)を使用して実装されます。
SFTPは、なじみのない(潜在的に有害な)ネットワークを介してリモートマシンと通信するための信頼性の高い接続を提供します。 SFTPは、クライアントサーバーアーキテクチャ上で機能してファイルを転送します。
この包括的なガイドでは、LinuxでデフォルトのSFTPポートを変更するプロセスについて説明します。
新しいSFTPポート番号を選択してください
デフォルトでは、SFTPはSSHサーバーであるポート番号22を使用します。このガイドでは、デフォルトのポート22TCPからポート2222に変更します。ただし、SFTP接続を構成するために、選択した他のポートを使用することを選択できます。
ノート: ポート0〜1023は、システムサービス用に予約されています。新しいポートは、1024〜65535のポートから選択されます。
ファイアウォールで新しいSFTPポートを許可する
システムでファイアウォールを使用している場合は、システムファイルで変更する前に、ファイアウォールで新しいSFTPポートを許可してください。許可しないと、SFTPアクセスがブロックされます。
Ubuntuシステムでは、 以下のコマンドを実行して、Ubuntuのファイアウォールで許可されているポートのリストに新しいSFTPポートを追加できます。
sudo ufw allow 2222 / tcp
新しいポートがに追加されたことを確認するには ufw
、次のコマンドを実行します。
sudoufwステータス
出力: ステータス:アクティブTo Action From ---------- ---- 8080 ALLOW Anywhere 2222 / tcp ALLOW Anywhere 22 / tcp ALLOW Anywhere
実行中のLinuxディストリビューションの場合 iptables
, 次のコマンドを使用して、新しいポートを追加します。
sudo iptables -A INPUT -p tcp --dport 2222 -m conntrack --ctstate NEW、ESTABLISHED -j ACCEPT
CentOSシステムの場合、次のコマンドを使用して、新しいポートを開きます。
sudo Firewall-cmd --permanent --zone = public --add-port = 2222 / tcp sudo Firewall-cmd --reload
でSFTPポートを構成/変更する sshd_config
ファイル
SFTPポートを変更および構成するには、 sshd_config ファイルを作成し、必要な変更を加えます。
開く sshd_config
を使用してファイル ナノ
エディターで、次のコマンドを使用します。
sudo nano / snap / core / 9804 / etc / ssh / sshd_config
ここで、次のような行を見つけます ポート22
(以下に見られるように)。
パッケージで生成された構成ファイル#詳細については、sshd_config(5)のマンページを参照してください#ポート22をリッスンするポート、IP、プロトコル#これらのオプションを使用して、sshdがバインドするインターフェイス/プロトコルを制限します#ListenAddress :: #ListenAddress 0.0.0.0 Protocol 2
このポート22をポート2222に変更したいので、単に次のように置き換えます。 ポート2222
次のように。
ポート2222
ノート: sshd_configファイルを編集するときは注意してください。編集を誤ると、接続の確立に失敗する可能性があります。
行がコメントされている場合 #
次に、 #
22の代わりに2222という番号を追加します。
変更後 22
sshd_configファイルのポート、を押します Ctrl + o
に続く 入力
sshd_configファイルを保存するためのキー。次に、を押してnanoエディターを終了します Ctrl + x
.
再起動します ssh / sshd
サービス
sshd_configファイルに加えられた変更を保存した後、SSHサービスを再起動して、システムが新しいSSH構成をロードできるようにします。
Ubuntuおよびその他のDebianベースのシステムでは、 次のコマンドを使用して、sshサービスを再起動します。
sudo service ssh restart
CentOSおよびその他のLinuxディストリビューションでは、 the ssh
サービスはと呼ばれます sshd
したがって、以下の代替コマンドを使用してsshdサービスを再起動します。
sudo systemctl restart sshd
新しいSSHポートが機能していることを確認します
次に、以下のコマンドを使用して、新しいSSHポートが稼働しているかどうかを確認します。
ss -an | grep 2222
以下のような出力が表示されます。
出力 tcp LISTEN 0128 0.0.0.0:2222 0.0.0.0:* tcp ESTAB 0 0 192.168.121.108:2222 172.217.160.163:8080 tcp LISTEN 0128 [::]:2222 [::]:*
新しいSFTPポートを使用して接続する
新しいSFTPポートの使用を開始するには、 -P
のオプション sftp
新しいSSHポート番号を指定するコマンド。
sftp -p 2222 username @ remote_host
例えば:
sftp -p 2222 [email protected]
Putty、WinSCPなどのGUIクライアントを使用している場合は、接続を開始するときに22ではなく新しいポート番号を指定します。