LoginSignup
44
45

More than 5 years have passed since last update.

AWS EC2 でSSH ログインするユーザを追加する

Last updated at Posted at 2014-03-29

確認事項

  • Ubuntu インスタンスを立ち上げたので、sshログインユーザ名はubuntu
  • ローカルマシンもUbuntu (Desktop ver.)
  • 初期ユーザ(ubuntu)の他にユーザ(deployer)を追加したい
  • 追加ユーザへはSSH でアクセスできるようにしたい
  • 間違いや改善点があればツッコミを

大まかな手順としては、

  1. [EC2] sshdの設定をして、ユーザの追加
  2. [Local] ssh-keygen して、scp で公開鍵(.pub)をアップロード
  3. [EC2] アップした鍵を新規ユーザの~/.sshフォルダに保存
  4. [EC2] ディレクトリ、ファイルの所有権、アクセス権を適切に設定

[EC2] sshd の設定、ユーザの追加

sshd の設定

/etc/ssh/sshd_config
...
#AuthorizedKeysFile %h/.ssh/authorized_keys
...

とコメントアウトされているので、コメントアウトを外す。(これで ~/.ssh/authorized_keys で認証できるように。)

このままだと設定が有効にならないので、sudo /etc/init.d/ssh restart して再読み込み。

ユーザの追加

adduser deployer          # ユーザの追加
usermod deployer -g admin # admin グループに追加

[Local] ssh-keygen, scp

いったんローカルに戻って、鍵の作成とアップロードをする

cd ~/.ssh/
ssh-keygen -f aws
scp aws.pub ubuntu@xxx.xxx.amazonaws.com:/tmp

そして再びEC2 インスタンスにubuntu ユーザとしてログイン。

[EC2] 公開鍵を保存

/tmp/aws.pub に公開鍵を保存したので、sshd での設定に習ってdeployer のホームディレクトリ下に鍵をリネームして配置する

# ファイルの移動
whoami    # => ubuntu
sudo su - deployer
whoami    # => deployer
pwd       # => /home/deployer
mkdir .ssh
mv /tmp/aws.pub ~/.ssh/authorized_keys

[EC2] フォルダ、ファイル権限の設定

whoami    # => deployer
pwd       # => /home/deployer
sudo su
whoami    # => root
chmod 700 .ssh
chown deployer:admin .ssh
chmod 600 .ssh/authorized_keys
chown deployer:admin .ssh/authorized_keys

ユーザの削除

ユーザが要らなくなったら、userdel -r deployer であとしまつ。

Links


(ただ ssh-copy-id したかっただけだったのに...)

44
45
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
44
45