サーバを遠隔操作する場合、セキュリティを考慮すると暗号化されたSSHでのみ接続できるようにしておきます。 telnetやftpは暗号化せずに平文でやりとりするので、第三者に盗聴される危険があるので、。SSHでリモート接続をします。ここでのポイントは、公開鍵暗号方式での接続のみを許可するように設定を行います。
sshdが有効になっているか確認します。
# chkconfig --list | grep sshd sshd 0:off 1:off 2:off 3:on 4:off 5:on 6:off
以下のコマンドで起動します。
# service sshd start
sshdはTCP Wrappersによりアクセス制御が行われるので、hots.allowに許可するIPアドレスを追記します。
# vi /etc/hosts.allow sshd: 127.0.0.1 192.168.0
ssh-keygenコマンドで鍵ペアを作成します。
> ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/user1/.ssh/id_rsa): <-- Enter(鍵の保存先) Created directory '/home/user1/.ssh'. Enter passphrase (empty for no passphrase): <-- パスフレーズの入力 Enter same passphrase again: <-- パスフレーズの再入力 Your identification has been saved in /home/user1/.ssh/id_rsa. Your public key has been saved in /home/user1/.ssh/id_rsa.pub. The key fingerprint is: 25:a3:25:52:cg:71:75:3b:4h:a4:63:6b:27:41:b2:ef user1@opensuse
> ls -l .ssh 合計 8 -rw------- 1 user1 users 1743 2008-01-14 16:27 id_rsa <-- 秘密鍵 -rw-r--r-- 1 user1 users 402 2008-01-14 16:27 id_rsa.pub <-- 公開鍵
> cat id_rsa.pub >> ~/.ssh/authorized_keys > chmod 600 ~/.ssh/authorized_keys > ll ~/.ssh -rw------- 1 user1 users 402 2008-01-14 16:37 authorized_keys
秘密鍵でのアクセスが問題なければ、OpenSSHサーバーの設定を変更して、パスワード認証の許可を停止させます。これにより作成した鍵ペアによる公開鍵認証方式によるログインのみ可能となります。 OpenSSHサーバーの設定ファイル/etc/ssh/sshd_configを編集します。
PermitRootLogin no <-- root権限でのログインを禁止 PasswordAuthentication no <-- 公開鍵方式で認証 UsePAM no <-- openSUSEの場合はPAM認証を停止させる PermitEmptyPasswords no <-- 空パスワードの禁止
再起動して、設定を反映させます。
# service sshd restart Shutting down SSH daemon done Starting SSH daemon done