LoginSignup
0
0

More than 5 years have passed since last update.

Deep Learning AMI (ubuntu)でデフォルトユーザを変更して使用する方法

Last updated at Posted at 2018-07-04

概略

AWSのAMIはデフォルトユーザ名が決まっているので,ID/PW認証のIDが既知なのはアタック耐性が弱くなるので「けしからん!」という方はいるだろう.
# 私の勤務先にも沢山いる

で,Deep Learning AMI (ubuntu)はデフォルトユーザのホームディレクトリに環境があるので,別ユーザを作成して利用しようとするとハマる.
じゃぁどうすればいいかというと

  • ユーザ名変更で乗り切る
  • ただしホームディレクトリは変更しちゃだめ

前提

デフォルトユーザubuntuでログインできる状態のDeep Learning AMIインスタンスがあるとする.

手順

  1. ユーザ名変更をするためのユーザ(testとする)を作成する

    sudo useradd test
    
  2. testをsudoerに加える

    sudo gpasswd -a test sudo
    
  3. /home/ubuntu/.ssh/authorized_keys/home/test/.ssh/authorized_keysにコピーする

    sudo -s
    cp -r /home/ubuntu/.ssh /home/test
    chown -R test.test /home/test/.ssh
    
  4. testはパスワードなしでsudoできないので,パスワードを作る.ここではtestpasswdとする.
    # もしくはvisudoでパスワードなしの特権ユーザとして設定しても良いが割愛する

    sudo passwd test
    Enter new UNIX password: [testpasswd]
    Retype new UNIX password: [testpasswd]
    
  5. 別窓でtestに接続できることを確認し,できることを確認したらubuntuとしてログインしている環境から抜ける
    # 何の設定が漏れているか分からんので

  6. testで接続したターミナルからrootになり,デフォルトユーザubuntuの名前とグループを変える
    (参照:Linuxでユーザーアカウント名、グループ名の変更 - Qiita
    ※注意:HOMEを変更すると,source activate *** で参照するパスが/home/ubuntu/***であるため,深層学習環境を使えなくなる.HOMEは変更しないこと.

    sudo -s
    [sudo] password for test:
    usermod -l newuser ubuntu
    groupmod -n newuser ubuntu
    
  7. ユーザ名を変更すると,パスワードなしでsudoすることができなくなるので,パスワードを作る
    # visudoの設定を変更しても良いと思うが,ちゃんと確認してないので割愛する

    sudo passwd newuser
    [sudo] password for test:
    Enter new UNIX password: [newuserのパスワードを入れる]
    Retype new UNIX password: [newuserのパスワードを入れる]
    
  8. newuserでログインし正常に動作することを確認して完了

    ssh newuser@hogehoge
    echo $USER
    newuser
    pwd
    /home/ubuntu
    source activate chainer_p36
    
0
0
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
0
0