外からログインできないと話にならないので
(インストール時Software selection でOpenSSH を選んだ場合はいらない)
sudo aptitude install openssh-server
これで、sshdが入って、勝手に起動してくれるので、
クライアント側から、
ssh (IPアドレス)
で外から入れるか確認。
こちらを参照。
http://fedorasrv.com/poderosa-public.shtml
一応、書いておきます。
サーバーにログインして、
(Poderosaだと、パスワード方式でログインできない(仕様)ので、
TeraTerm Pro with ssh2か、cygwinのsshで一旦ログインして)
vi .ssh/authorized_keys ←公開鍵(上の例だとkey.pub)の中身をクリップボードから貼り付けする chmod 600 .ssh/authorized_keys exit
vi .ssh/authorized_keysが上手く行かない(ファイルが生成できないなど)の場合。
手っ取り早い方法は、
ssh localhost
で一旦、自分のマシンにでも、sshで入ると.sshが正しく作られます。
すでに鍵がないと、sshで入れない、設定の場合は、
.sshディレクトリを作って、正しくパーミッションの設定を行ってください。
例えば、以下のような感じです。
cd ~ mkdir .ssh chmod 700 .ssh
Poderosaで接続テストをします。
Poderosaを立ち上げて、「ファイル」「新規Telnet/SSH接続」で、
エンコーディングは、ubuntuだとutf-8ですが、
BSDなんかだと、eucじゃないかな?
うまくいった?ヽ( ´ー`)ノ
PuTTYで鍵を作りたい場合はこちらを参照→ssh/PuTTY
とりあえず、
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設定を確かめる
)