2014年7月11日金曜日

ec2-user以外のユーザでAmazon Linuxにログインする

Amazon Linuxに個別のユーザでssh接続する必要があったりするのでその手順をまとめてみます。

本来は接続元で秘密鍵と公開鍵を作成し、接続先に公開鍵を配置しますが、秘密鍵と公開鍵のペアはどこで作成してもよいので、今回は接続先のLinuxサーバ上で鍵ペアを作成し、秘密鍵を接続元PCに持ち帰る手順を記載します。

OS: Amazon Linux 2014.03 (64-bit)
putty: 0.63


■ユーザ作成
[ec2-user@ip-10-86-30-32 ~]$ sudo useradd user001
[ec2-user@ip-10-86-30-32 ~]$ sudo passwd user001

## sudo権限付与(必要に応じて)
[ec2-user@ip-10-86-30-32 ~]$ sudo visudo
--- 99行目あたりに追記 ---
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
user001 ALL=(ALL)       ALL ←追記


■秘密鍵(id_rsa)と公開鍵(id_rsa.pub)生成
[ec2-user@ip-10-86-30-32 ~]$ su - user001
Password:
[user001@ip-10-86-30-32 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user001/.ssh/id_rsa):
Created directory '/home/user001/.ssh'.
Enter passphrase (empty for no passphrase): ←パスフレーズ入力
Enter same passphrase again: ←パスフレーズ入力
Your identification has been saved in /home/user001/.ssh/id_rsa.
Your public key has been saved in /home/user001/.ssh/id_rsa.pub.
The key fingerprint is:
c8:30:57:dc:60:cc:ae:f1:5a:32:b0:8e:11:c5:a2:bc user001@ip-10-86-30-32
The key's randomart image is:
+--[ RSA 2048]----+
|       ++o       |
|    . .o+ .      |
|    oo.+         |
|    +=+.o .      |
| . . *oS+o       |
|  o .  o o       |
|   .   o         |
|  D   .          |
|                 |
+-----------------+
[user001@ip-10-86-30-32 ~]$
.sshディレクトリのパーミッションは700で自動生成されます。

## authorized_keysに公開鍵を登録
[user001@ip-10-86-30-32 ~]$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys
[user001@ip-10-86-30-32 ~]$ chmod 600 .ssh/authorized_keys
[user001@ip-10-86-30-32 ~]$ ll .ssh/
total 12
-rw------- 1 user001 user001  404 Jul 11 14:28 authorized_keys
-rw------- 1 user001 user001 1766 Jul 11 14:28 id_rsa
-rw-r--r-- 1 user001 user001  404 Jul 11 14:28 id_rsa.pub
[user001@ip-10-86-30-32 ~]$


■秘密鍵をローカルPCに保存
[user001@ip-10-86-30-32 ~]$ cat .ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,8781E4937DE990254DE539C21439ABE1

XyHTJcMs/9BQpoctuFG4NeR8vo6yxu/XaXyy01HtobrLU+QFUMo96rZsl79DWroL
doa5RfBNKcT1/IQHuNNOrlJMJmvz7mQyN+j2tC6GPohE/ai+ytGCeWUGwkvysXBl
(中略)
xZun1TzEp9z1F19+EWmTkQzzULCY/faZK4jmnTPEMnoLYlfJQfYmwxbGaRm3v58S
+VuQ30YJsOfSUrhFG5kF0xHcepBN6AkzViYvUdc1/wf35dNlzCaw0tfeQWpcMaqQ
-----END RSA PRIVATE KEY-----
[user001@ip-10-86-30-32 ~]$
クリップボード経由でローカルPCの"C:\aws_keys\user001.pem"に保存。

## id_rsaとid_rsa.pubの削除
[user001@ip-10-86-30-32 ~]$ rm .ssh/id_rsa*
[user001@ip-10-86-30-32 ~]$ ll .ssh/
total 4
-rw------- 1 user001 user001 404 Jul 11 14:28 authorized_keys
[user001@ip-10-86-30-32 ~]$
セキュリティ的にも、作業済みで不要となった鍵は削除しておく。


■PUTTY用の鍵を生成
PUTTYGEN.EXEを利用してuser001.pem → user001.ppk を生成。




"C:\aws_keys\user001.ppk"に保存。


■user001でログイン


Using username "user001".
Authenticating with public key "imported-openssh-key"
Passphrase for key "imported-openssh-key": ←パスフレーズ入力
Last login: Sun Jul 11 15:02:20 2014

       __|  __|_  )
       _|  (     /   Amazon Linux AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-ami/2014.03-release-notes/
9 package(s) needed for security, out of 19 available
Run "sudo yum update" to apply all updates.
[user001@ip-10-86-30-32 ~]$
ログイン成功!!


こちらの情報が何かのお役に立てましたら幸いです。サイト継続ご協力のほどお願い致します。m(_ _)m

0 件のコメント:

コメントを投稿