ubuntu に 新しいユーザを追加 (root権限なし)
ユーザーの追加
useradd <任意の名前>
passwd <任意の名前>
sudoを使いたい場合
現在ログインしているユーザーがsudo権限を持っていることを確認します。
sudo -l
sudoグループにユーザーを追加します。
sudo usermod -aG sudo <ユーザー名>
変更を反映するために、ログアウトして再度ログインします。
logout
再度sudo権限を確認します。
sudo -l
homeディレクトリを作成
mkdir /home/<任意の名前>
.sshディレクトリを作成
mkdir /home/<任意の名前>/.ssh
authorized_keysを作成
touch /home/<任意の名前>/.ssh/authorized_keys
パーミッションを変更
chmod 700 /home/<任意の名前>/.ssh
chmod 600 /home/<任意の名前>/.ssh/authorized_keys
ユーザーの所有者を変更
chown -R <任意の名前>:<任意の名前> /home/<任意の名前>/.ssh
ssh接続するクライアントの端末で鍵を作成
初めて.sshディレクトリを作成する場合
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
すでに.sshディレクトリがある場合
ssh-keygen -t rsa
作成した鍵をサーバーに送信
パスう
ssh-copy-id -i ~/.ssh/id_rsa.pub <任意の名前>@<サーバーのIPアドレス>
configに設定を書く
vim ~/.ssh/config
Host <任意の名前>
HostName <サーバーのIPアドレス>
User <任意の名前>
Port 22
IdentityFile ~/.ssh/id_rsa
vimを保存し終了する方法は、以下の手順です。
・ノーマルモード(コマンドモード)に移行する。
もし現在編集モード(インサートモード)にいる場合は、エスケープキーを押してノーマルモードに戻る。
コマンドモードで「:」を入力する。
・「wq」と入力する。
「w」は保存(write)、「q」は終了(quit)の意味。
・Enterキーを押す。
これでvimが保存され、終了されます。
sshd_configを編集
vim /etc/ssh/sshd_config
以下の行があればコメントアウトします。
#AuthorizedKeysFile /.ssh/authorized_keys
新しい Match ブロックを作成して、それぞれのユーザの公開鍵を指定する AuthorizedKeysFile ディレクティブを追加します。
Match User root
AuthorizedKeysFile ~/.ssh/authorized_keys
Match User <任意の名前>
AuthorizedKeysFile /home/<任意の名前>/.ssh/authorized_keys
sshdを再起動
これで、指定されたユーザごとに異なる authorized_keys ファイルが使用されるようになります。
systemctl restart sshd
ssh接続するクライアントの端末からログイン
ssh <任意の名前>@<サーバーのIPアドレス>
または
ssh <configに設定を書くで設定したHOSTの名前>
接続した時にターミナルでコマンドが打てない場合
exec bash -l
次回以降自動で立ち上がる設定
touch /home/<任意の名前>/.bashrc
echo "exec bash -l" >> ~/.bashrc
chshコマンドを使用して、新しいログインシェルを指定します。
chsh -s /bin/bash <任意の名前>
sudoが必要な場合がある。