LoginSignup
1
1

More than 3 years have passed since last update.

ConoHa VPSのUbuntuにユーザを追加してSSHを公開鍵認証にする最も簡単な方法

Last updated at Posted at 2019-09-13

ユーザを作って権限付与して、ローカルで鍵生成して転送して・・・と面倒な解説ばかりだしCentOSでの解説しか無かったので、UbuntuのVPSで、一般ユーザで公開鍵認証のSSHをする方法です。とっても簡単にしました。

認証用のKeyを、rootと一般ユーザで同じものを使うことにして、ssh-keygenやscpも使いません。

一般ユーザuserを作ります。

前提条件

  • 今からConohaでUbuntuのVPSを立てる
  • SSHのクライアントはローカルに入っている

ConoHaでの準備

ConoHaでSSHキーを作る

ConoHaのセキュリティタブから、SSHセットを予め作ってしまいます。
このとき秘密鍵を一度だけダウンロードできるので、~/.ssh/UbuntuVPS_PrivateKey.pemとでもして保存します。
2019-09-13_19h22_52.png

VPSを作る

オプションのSSH Keyを、”キーを選択”として、さっき作ったキーを指定します。

2019-09-13_19h27_33.png

ここでSSHを指定すると、VPSの認証の設定が勝手に以下のようになります。
公開鍵認証しかするつもりがないなら、/etc/ssh/sshd_configは触る必要がありません。

  • 認証は公開鍵のみ:~/.ssh/authorized_keysを参照する
  • パスワードでの認証は許さない
  • パスフレーズのないキーは許す
  • rootは指定したRSAキーを公開鍵にもつ

とにかく、これで”追加”を押せばVPSが作られます。

ローカルでの準備

先にSSH接続用の設定を作ってしまいます。
~/.ssh/configを、なければ生成して編集する。

~/.ssh/config
Host root
    HostName VPS_IP
    Port 22
    User root
    IdentityFile path\to\.ssh\UbuntuVPS_PrivateKey.pem

Host user
    HostName VPS_IP
    Port 22
    User user
    IdentityFile path\to\.ssh\UbuntuVPS_PrivateKey.pem

User以外はすべて同じです。お手軽ですね。
IdentityFileには、ConoHaからダウンロードした秘密鍵:pemファイルを指定します。

この段階で、rootには以下のコマンドでssh接続できるハズです。

ssh root

そのrootのまま進みます。

VPSの操作

rootでssh接続できたら、一般ユーザを追加して、sudo権限を与え、sshはrootと同じ用にします。
以下のコマンドでいっぺんに完了します。
※CentOSで言うところのwheelグループがubuntuのsudoグループになります。

# パスワードやらプロフィールやら求められる
adduser user

gpasswd -a user sudo
ls /home/
mkdir /home/user/.ssh
cp .ssh/authorized_keys /home/user/.ssh/
chmod 700 /home/user/.ssh
chmod 600 /home/user/.ssh/authorized_keys
chown -R user /home/user

完了したら一度exitする。

たしかめる

次のコマンドでrootで入れることを確認したら、

ssh root

次のコマンドでuserで入れることを確認。

ssh user
1
1
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
1
1