
標準の 22 以外のポートで SSH デーモンを実行するにはどうすればよいですか?
クラウド VM 上の SSH 構成を間違えたため、SSH で常にパスワードの入力が求められるようになりました。これを修正しようとした最初の試みでロックアウトされ、ディスクをアンマウントし、動作中の VM 内にマウントして、ファイルを既知の動作状態に修正する必要がありました。しかし、それでもパスワードの入力が求められます。
メインの ssh デーモンを更新し/etc/ssh/sshd_config
て再起動し、テストを実行しながら、古い構成を使用して別のデーモンを実行したままにして、最初のデーモンでロックアウトされた場合に構成を元に戻せるようにしたいと思います。具体的には、Ubuntu でこれをどのように実行すればよいですか?
答え1
Ubuntu のバージョンについては言及されていないため、どの init システムを実行しているのかわかりません。
systemd の場合は、ファイル がある可能性があります/etc/systemd/system/sshd.service
。これを としてコピーできます/etc/systemd/system/sshd_alt.service
。次に、ExecStart
行を調整して または何かを追加します-p 22000
。その後、systemctl enable sshd_alt
および を実行しますsystemctl start sshd_alt
。完全に異なる設定ファイルを指定することもできます。
これが一度だけの場合、screen などでコピーを手動で開始することもできます。screen を起動して、次のような操作を実行します/usr/sbin/sshd -D -p 22200
。その screen に再接続してプロセスを強制終了できるまで、予備の sshd デーモンが起動します。
または、@EEAA が言ったように、単に切断せずに、2 番目のセッションを使用して再接続できるかどうかをテストします。
答え2
次のコマンドを使用して、代替ポートで sshd を起動できます。
sshd -p 12345
12345 をお好みのポート番号に置き換えてください。sshd
が にない場合はPATH
、コマンドでフルパス名を使用する必要があります (例: ) /usr/sbin/sshd
。
答え3
1 つの SSH セッションをアクティブのままにしておき、別のセッションを使用して構成の変更を行います。元のセッションは接続されたままなので、構成の変更によって何かが壊れた場合は、変更を元に戻すために使用できます。