回答:
最初に、構成ファイルで構成されているポートを確認します。
$ sudo grep Port /etc/ssh/sshd_config
Port 22
その後、再起動ssh
して、今見た構成を確実にロードするか、ssh
実行中のポートを見つけます。
$ sudo netstat -tpln | egrep '(Proto|ssh)'
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 12586/sshd
これは通常のssh
ポート22での実行です。
sudo
通常、sshd
設定ファイルは誰でも読めないため、最初のコマンドで必要です。2番目でsudo
はProgram name
、を解決できる必要があります。そうしないと、自分のユーザーで実行されているプロセスの名前しか表示されません。
サーバーへのログインアクセス権がない場合は、nmap
の「バージョンスキャン」機能を使用してSSHポートを見つけることができます。
nmap -sV -p- <insert target's IP here>
この-sV
オプションは「バージョンスキャン」を-p-
意味し、「すべてのポートをスキャン」を意味します。接続が良好で、誰かのファイアウォールやIDSを動揺させないことが確実な場合は-T5
、「できるだけ早くスキャンする」を追加できます。結果は次のようになります。
PORT STATE SERVICE VERSION
1422/tcp open ssh (protocol 2.0)
~/.ssh/config
。