>> HOME >> CentOS 4 MENU >> SSH サーバー (OpenSSH)
SSH サーバーは Telnet 同様クライアントからサーバーへリモート接続して、遠隔地からサーバーを操作できるようにするためのサーバーです。但し、Telnetが平文でデータを送受信するのに対して、SSHはデータを暗号化しているため、セキュリティが確保できるという利点があります。

1. OpenSSH サーバーの設定
1 ) OpenSSH サーバー設定ファイルの編集
2 ) OpenSSH サーバー再起動
2. 鍵ペアの作成
1 ) 鍵ペアの作成
2 ) 秘密鍵の抜取り(FloppyDiskを利用)
3. クライアント(Windows - PuTTY)の設定
1. OpenSSH サーバーの設定
SSH のプロトコルには、バージョン1(以下SSH1)とバージョン2(以下SSH2)があります。SSH2 は、SSH1 に比べてデータの途中改竄を防ぐ機能を追加するなど、安全性がより高いため、SSH2 でのみアクセスを受け付けるようにします。
また、秘密鍵を用いて更にセキュリティを強化します。サーバとの接続は PuTTY を用います。
1 ) OpenSSH サーバー設定ファイルの編集
[root@linux ~]# vi /etc/ssh/sshd_config 

#       $OpenBSD: sshd_config,v 1.69 2004/05/23 23:59:53 dtucker Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options change a
# default value.

#Port 22
# SSH2 での接続のみを許可
Protocol 2
#ListenAddress 0.0.0.0
#ListenAddress ::
 :
 :
# Lifetime and size of ephemeral version 1 server key
#KeyRegenerationInterval 1h
# 暗号化強度 1024 bit
ServerKeyBits 1024
 :
 :
# Authentication:

#LoginGraceTime 2m
# ROOT でのログイン禁止
PermitRootLogin no
#StrictModes yes
#MaxAuthTries 6
 :
 :
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#RhostsRSAAuthentication no
# similar for protocol version 2
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# RhostsRSAAuthentication and HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
# パスワードでのログイン禁止
PasswordAuthentication no
# 空パスワードでのログイン禁止
PermitEmptyPasswords no
 :
 :
# SSHデーモンへの認証要求数 ( 最終行へ追加 )
# 2つまでの接続要求を受け付け、3つを超えるそれ以降の要求を 80%の割合で拒否し
# さらに要求が増え続けて 5つを超えると以降すべてを拒否する。
MaxStartups 2:80:5
2 ) OpenSSH サーバー再起動
[root@linux ~]# service sshd restart 
sshd を停止中:                                             [  OK  ]
sshd を起動中:                                             [  OK  ]
2. 鍵ペアの作成
1 ) 鍵ペアの作成
SSH では public(公開鍵)/private(秘密鍵)という鍵のペアを使って認証を行います。
鍵ペアは Windows側で作ることもできますし、Linux側で作ることも、既に使っている OpenSSHの鍵を流用することもできます。ここでは、OpenSSHで鍵ペアを作成し、Windows側ではそれを流用することとします。
公開鍵暗号化認証方式によるSSHリモート接続においては、パスフレーズはあまり意味がないので、設定しません。
[root@linux ~]# su - centos 
[centos@linux ~]$ ssh-keygen -t rsa 
Generating public/private rsa key pair.
Enter file in which to save the key (/home/centos/.ssh/id_rsa): 
Created directory '/home/centos/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/centos/.ssh/id_rsa.
Your public key has been saved in /home/centos/.ssh/id_rsa.pub.
The key fingerprint is:
83:fa:17:14:f5:22:e0:bc:08:91:0a:d3:48:4c:ee:41 centos@linux.mountainbigroad.jp

[centos@linux ~]$ ls -l .ssh/ 
合計 16
-rw------- 1 centos centos 243 11月 19 16:14 authorized_keys
-rw------- 1 centos centos 951 11月 19 16:14 id_rsa

[centos@linux ~]$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys 
[centos@linux ~]$ rm -f .ssh/id_rsa.pub 
[centos@linux ~]$ chmod 600 .ssh/authorized_keys 
[centos@linux ~]$ exit 
2 ) 秘密鍵の抜取り(FloppyDiskを利用)
[root@linux ~]# mount /media/floppy/ 
[root@linux ~]# cp /home/centos/.ssh/id_rsa /media/floppy/ 
[root@linux ~]# rm -f /home/centos/.ssh/id_rsa 
[root@linux ~]# umount /media/floppy/ 
3. クライアント(Windows - PuTTY)の設定
Fedora Core 5 サーバー構築備忘録 の『PuTTYによるWindowsからのSSH接続』を参照してください。