ssh設定

インストール

$ sudo apt-get install openssh-server

秘密鍵、公開鍵、の生成

$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

/root/.ssh/id_rsa already exists.

Overwrite (y/n)? y

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

b5:02:8e:f2:6b:17:0a:33:de:21:d5:0e:33:d0:3f:e8 root@uki2server-desktop

The key's randomart image is:

+--[ RSA 2048]----+

| . |

| . . |

| . +. . |

| *o+. . . |

| .o.=..S . |

| =oE o . |

| . *.o . |

| . +.. |

| ... |

+-----------------+

これで秘密鍵(rd_rsa)、公開鍵(id_rsa.pub)ができた。

あとは相手サーバーの/home/username/.sshフォルダに公開鍵を入れてログインする。

パスフレーズ無効化

$ ssh-keygen -N "" -t rsa

$ ls -l ~/.ssh

-rw------- 1 hadoop hadoop 1675 2010-12-23 15:57 id_rsa

-rw-r--r-- 1 hadoop hadoop 402 2010-12-23 15:57 id_rsa.pub

リモートするPCへコピーします

$ ssh-copy-id user@remote_hostname

リモートPCでの設定

$ cp id_rsa.pub authorized_keys

サーバー側で認証エージェントにRSAの認証鍵を追加します。

$ ssh-add

sshd_config設定

$ vim /etc/ssh/sshd_config

$ RSAAuthentication yes #RSA 認証を有効にする

# プロトコル Versison 1 のみ適用される

$ PubkeyAuthentication yes # 公開鍵による認証を有効にする

$ PasswordAuthentication no # パスワードによる認証を無効にする

$ /etc/init.d/sshd restart

portを22->10000へ変更する(参照)

sshd_config設定

$ vim /etc/ssh/sshd_config

#Port 22

Port 10100

$ /etc/init.d/ssh restart

port scanで確認

$ nmap xx.xx.xxx.xxx -PN

logout

Starting Nmap 5.21 ( http://nmap.org ) at 2010-07-05 21:19 JST

Nmap scan report for ec2-XX-XX-XXX-XXX.ap-northeast-1.compute.amazonaws.com (xx.xx.xxx.xxx)

Host is up (0.018s latency).

Not shown: 976 filtered ports

PORT STATE SERVICE

22/tcp closed ssh

5432/tcp open postgresql

10000/tcp closed snet-sensor-mgmt

10001/tcp closed unknown

Nmap done: 1 IP address (1 host up) scanned in 3.86 seconds

参考リンク:

ubuntu SSHを使ってパスワードなしで接続