AlmaLinux9環境で、既存ユーザーを維持しつつ新規ユーザーをSSH鍵認証で追加する手順と、その仕組みを整理します。
■ やりたいこと
- 既存ユーザー(鍵認証)はそのまま維持
- 新規ユーザーを追加
- 鍵認証でログイン可能にする
- sudo権限を付与
■ 手順
① ユーザー作成
sudo useradd -m -s /bin/bash user02
sudo passwd user02
-
-m:ホームディレクトリ作成 -
-s:ログインシェル指定
② 鍵作成(ユーザー自身で実施)
sudo su - user02
ssh-keygen -t rsa -b 4096 -f ~/.ssh/user02.pem
- 秘密鍵:user02.pem(クライアントで使用)
- 公開鍵:user02.pem.pub(サーバで使用)
③ 公開鍵を登録
mkdir -p ~/.ssh
chmod 700 ~/.ssh
cat ~/.ssh/user02.pem.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
ここで重要なのは
SSHはauthorized_keysしか見ていない という点です。
④ 権限設定
chmod 600 ~/.ssh/user02.pem
chmod 644 ~/.ssh/user02.pem.pub
chmod 755 ~
⑤ sudo権限付与
sudo usermod -aG wheel user02
■ 仕組みの理解(重要)
SSH認証は以下の構造です:
- 秘密鍵 → クライアントが保持
- 公開鍵 → サーバに登録
- authorized_keys → 「ログイン許可リスト」
ログイン時、サーバは
authorized_keysに登録された公開鍵と一致するか を確認します。
■ よくある誤解
「公開鍵が見えても大丈夫なのか?」
→ 問題ありません。公開鍵は公開前提の情報です。
重要なのは以下です:
- authorized_keysは書き換えられないこと
- 秘密鍵は絶対に漏洩しないこと
■ セキュリティの本質
SSHは次の2点で成立します:
- 秘密鍵の保護
- authorized_keysの管理
この2つを正しく理解していれば、SSHトラブルの大半は防げます。
■ まとめ
- ユーザーごとに鍵認証は独立管理できる
- authorized_keysは認証の中核
- 権限設定ミスがログイン失敗の主原因
- 公開鍵は見えても問題なし
実務では「権限」と「authorized_keysの扱い」が最重要ポイントです。