sshd : openssh-server の導入

ssh サーバを導入する。

debian etchでのパッケージ名は
openssh-server
実行時のプロセス名は
sshd
となる。

#aptitude install openssh-server
これでパッケージのインストールは完了。

/etc/ssh/sshd_config
上記設定ファイルを編集する。

PermitRootLogin no
以下でrootでのログインを不許可にする。

PasswordAuthentication no
Linuxパスワードでのログインを禁止し、秘密鍵を持っていないとログインできなくなる。(後述*1)

PermitEmptyPasswords no
空パスワードを禁止する。

RSAAuthentication yes
RSA認証を許可(ssh1)

PubkeyAuthentication yes
公開鍵認証を許可(ssh2)

UsePAM yes
ユーザ単位でアクセスを許可する場合にyesとしておく。下記参照。

以上がセキュアな設定だ。以下のように再起動させれば ssh サーバ自体の設定は終了。
#/etc/rc.d/init.d/sshd restart


続いて、ユーザ単位でアクセスを許可する場合を説明する。

/etc/pam.d/sshd
を編集する。
account required pam_access.so
の一行が記述されていることを確認する。無ければ、記述する。
/etc/security/access.conf
の設定が有効になるので、さらにこの設定ファイルを編集する。(*2)
-:ALL except ユーザ名:ALL
このように書くと、特定ユーザ名のみを許可することができる。


仮にローカルネットワークからの接続のみに限定するといった場合、鍵方式での認証はまどろっこしいなどといった場合は、先の sshd_config 内の記述を以下のようにする。
PasswordAuthentication yes
この場合、設定はここで終了。

SSH のポートを外部に開放して自宅外からもアクセスしたい場合には鍵認証方式が必須。

次回はOPENSSHによる鍵作成について触れてみようと思います。


*1
パスワード方式の場合、ユーザ名とパスワードさえわかれば、アクセスが可能となります。
鍵認証方式の場合、サーバとクライアントにそれぞれ鍵が必要となります。次回詳しく書こうと思います。

*2
permission:users:origins
の書式で構成されるファイル。
permission は、許可なら + 、不許可なら -
users は、設定する ユーザー または グループ名 を記述。 ALL と記述すると、全てが対象になる。 EXCEPT 〜 は、対象から除外する ユーザー OR グループ名 を指定する。
origins は、端末やネットワークなどを指定する。tty名、ホスト名、IPアドレス、ALL、LOCAL が指定できる。

関連の話題を探す@人気ブログランキング

この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/53353031

この記事へのトラックバック
Powered by Seesaa