とりあえず、
sudo vi /etc/ssh/sshd_config
でいじる。
Port 12345 ←ポート番号、22以外で好きに変えて PermitRootLogin no ← rootでのログインを禁止 PasswordAuthentication no ← パスワード認証方式はダメよ PermitEmptyPasswords no ← パスワードなしはダメよ ClientAliveInterval 60 ←NAT時に一定時間で切断されないような気がする
sshd -tでsshd_configの文法チェック(テスト実行)ができます。下記のように特に何も出なければOKです。
$ sudo sshd -t $
そして、sshdを再起動
linuxの場合:
sudo /etc/init.d/ssh restart
OpenBSDの場合
sudo /etc/rc.d/init.d/sshd restart
あとはクライアントマシンからsshクライアントで、sshサーバーに繋いでみて以下を確認しましょう
NATとかファイアーウォール下だと一定時間で、
Read from remote host ******: Connection reset by peer Connection to ****** closed.
と言われて強制切断される。
# keep Alive timer ClientAliveInterval 15 ClientAliveCountMax 3
でよいはず。
あとは最近のsshクライアントには定期的に無害なパケットを送り続ける設定があるようなので、それも併用してみましょう。
(例えば、Poderosa3には設定に「ターミナル」に「入力がないときKeepAliveパケットを送信する(K)」という設定で5分程度で設定してみてます
[TODO]:KeepAlive設定を確かめる
)