Navigation : Top / ssh

sshの設定

公開鍵暗号を使用したリモートアクセス.


sshdの設定(サーバー側)

sshdの設定

サーバー側sshd設定をする. sshdの設定は/etc/ssh/sshd_configを編集して行う.

PermitRootLogin no        : sshでrootのログインを許可するかどうかを指定
PasswordAuthentication no : Linuxのパスワード認証を許可するかを指定
X11Forwarding no X11      : X11で転送を許可するかを指定

PasswordAuthentication?はとりあえずyesで設定が全て終わった後にnoとする

設定が完了したら、sshdを再起動

$ su -
# /etc/rc.d/init.d/sshd restart

hosts.allowの変更

サーバーのhosts.allowを変更

例)sshd: 192.168.0. 

LinuxからのSSH接続

クライアントの鍵を生成

最初にクライアント側の秘密鍵と公開鍵を生成する. 一般ユーザーでserverへログインし,rsa鍵を生成する.

ssh-keygen -t rsa
pass phaseはlogin passwordと違うモノの方がベター

dsa鍵を生成

ssh-keygen -t dsa
  • Windowsで使う場合には、puttygen.exeでloadしてsaveすること。

サーバーへ公開鍵を転送

公開鍵をサーバーへ転送します.SERVER_NAMEは転送先サーバーを指定します.

scp ~/.ssh/id_rsa.pub SERVER_NAME:~/.ssh/authorized_keys
scp ~/.ssh/id_dsa.pub SERVER_NAME:~/.ssh/authorized_keys2

転送のたびにパスワードを聞いてきます.Linuxのログイン時に使うパスワードを入力してください.

仕上げ

サーバー側のパスワード認証を許可しないように設定. /etc/ssh/sshd_configの「PasswordAuthentication?」を「no」に変えた後,sshdを再起動.

サーバーへsshで接続

sshを使ってサーバーへ接続するには

ssh SERVER_NAME

Pass phraseを聞かれますので、鍵生成時に指定したパスフレーズを入力してください。

WindowsからのSSH接続(PuTTYを使用)

PuTTYの設定

  • PuTTYの設定
  1. putty-0.XX-installer.exeとputtykjpbinを解凍する。
  2. puttykjpbinの中身をputty-0.XX-installer.exeにより作成された Folderに移す。

公開鍵の作成

  1. puttygen.exeを起動
  2. "generate"ボタンを押す(プログレスバーの下の空白のエリアでマウスをぐりぐりと動かすことにより乱数を生成)
  3. "Key passphrase"に、これらのキーペアに対するパスフレーズを入力
    • ログインパスワードとは別のものを使用すること
  4. "Save public key"および"Save private key"でそれぞれ公開鍵と秘密鍵をファイルに保存
    • id_rsa.pub(公開鍵)
    • id_rsa.ppk(秘密鍵)

公開鍵の転送

作成した公開鍵を接続先に転送する。

C:\Program Files\putty>pscp id_rsa.pub server1:.ssh/id_rsa.pub

サーバーに接続

mkdir .ssh
chmod 700 .ssh
mv id_rsa.pub .ssh
cat ../ssh/id_rsa.pub >> authorized_keys2

PuTTYの設定

PuTTYの 設定画面の"接続”、”SSH"、”認証”で認証のためのプライベートキーファイルに先ほど作成したid_dsa.PPKを登録

Windowsからのファイル転送(WinSCPを使用)

入手

設定

暗号鍵・公開鍵の位置を指定するだけ.

Link