Monday, November 20, 2006

SSHサーバの構築(Fedora Core 6)

Fedora Core 6にSSHサーバを構築した時のメモ.
接続はSSH2で公開鍵認証のみを許可します.また,クライアントはWindowsで,Poderosaを使用します.参考にさせて頂いたのは以下のサイトです.より詳しい説明が必要な方はご覧ください.

ここではOpenSSHを使用します.Fedora Core 6を基本的な構成でインストールした場合は既にインストールされています.インストールされているかどうかは次の方法で確認できます.
# yum list installed openssh
Loading "installonlyn" plugin
Installed Packages
openssh.i386 4.3p2-10 installed

インストールされていない場合はインストールしてください.
# yum install openssh-server


OpenSSHの設定
OpenSSHサーバの設定ファイルを編集します.
# vi /etc/ssh/sshd_config
ポートを変更(セキュリティ向上のため)
-#Port 22
+Port <ArbitraryPort>

SSH2を使用
-#Protocol 2,1
+Protocol 2

rootでのログインを禁止
-#PermitRootLogin yes
+PermitRootLogin no

パスワードでのログインを禁止
-#PasswordAuthentication yes
+PasswordAuthentication no

空パスワードでのログインを禁止
-#PermitEmptyPasswords no
+PermitEmptyPasswords no

設定した内容を反映するため,OpenSSHを再起動します.
# service sshd restart

Firewallを変更して,指定したポートを許可するのを忘れないでください.

鍵の作成
鍵はPoderosaを用いて作成します.Poderosaは鍵のフォーマットにSECSHを使用しているため,ssh-keygenで作成した鍵はそのままでは使用できません.今回はクライアントにPoderosaを使用するため,手間を省くためにPoderosaで作ります.
Poderosaを起動し,[ツール] > [SSH鍵作成ウィザード]を起動します.アルゴリズムにRSAを選択し,後はウィザードに従えば作成できます.鍵の生成が完了したら秘密鍵を“id_rsa”,公開鍵(OpenSSH)を“id_rsa.pub”とでもして保存してください.ここではSECSH形式の公開鍵は使用しません.

公開鍵の登録
先ほど生成した公開鍵をFedoraマシンに持って行き,登録します.この作業はログインを許可したいユーザで行います.
ログインユーザを変更
# su - <username>

公開鍵をauthorized_keysに追加
$ cat /path/to/pub_key >> ~/.ssh/authorized_keys

公開鍵のパーミッションを自分のみに
$ chmod 600 ~/.ssh/authorized_keys

以上で終了です.Poderosaから接続を確認してください.

追記
November 29, 2006 at 16:30
OpenSSHの再起動コマンドが間違っていたのを修正しました
公開鍵のパーミッション変更コマンドが間違っていたのを修正しました

No comments: