サーバーを立てたら外から使いたくなるのが人の常。しかしTelnetはセキュリティが不安。そんなときはSSHを使いましょう。それなりに安全にリモートアクセスが可能になります。
Vineには標準でSSHのパッケージが入っていますが、もしインストールしていなければrpmでインストールします。インストールするのは、「openssh~」というパッケージです。インストール直後の状態でも基本的な設定は済んでいるので、あとは設定ファイルを自分の環境に合わせて書き換えるだけで使えます。
/etc/ssh/sshd_configの編集
sshの設定ファイルは、「/etc/ssh/sshd_config」です(「/etc/ssh/ssh_config」という似た名前のファイルがありますが、こちらはsshクライアントの設定ファイルなので間違えないようにしましょう)。viやemaceなどのエディタで編集します。以下はうちでの設定です(デフォルトから変更した部分と、あえて明示したもののみ)。
PermitRootLogin no <= rootでのログインを許可しない RSAAuthentication yes <= RSA認証を許可する RhostsAuthentication no <= rhosts認証を許可しない RhostsRSAAuthentication no <= rhosts-RSA認証を許可しない HostbasedAuthentication no <= ホストベース認証を許可しない PasswordAuthentication no <= パスワード認証を許可しない ChallengeResponseAuthentication no <= チャレンジレスポンス認証を許可しない X11Forwarding no <= X11転送を許可しない
デフォルトの設定でも動作しますが、PasswordAuthentication は no にしておいたほうがいいです。なお、各項目の詳細については、「man sshd_config」するか、 http://www.unixuser.org/~euske/doc/openssh/jman/sshd_config.html あたりを参考にしてください。
上記の設定では、RSA認証による接続しか受け付けません。
/etc/hosts.allow、/etc/hosts.denyの設定
Vine標準のopensshはtcp-wrappers(inetd)経由では動くようになっていません。しかし、オプション設定でhosts.allow、hosts.denyを読み込むようになっているので、これらを設定しないと上手く動作しないので注意が必要です。
外部から使用するなら、hosts.allowに 「sshd:ALL」 を追加して全ての端末からのアクセスを許可します。利用する端末が限定できるならそのように設定しましょう。
RSA認証鍵の作成
設定でRSA認証しか受け付けないようにしているので、RSA認証鍵を作る必要があります。Windows上で作成するならPuTTYgenが便利です(WinSCP3をインストールする際、オプションで一緒にインストールできます)。
sshdの起動
# /etc/rc.d/init.d/sshd startでsshdを起動します。
あとはWinSCPやTera Term Proを使って接続を確認すれば終了です。