KUSANAGI MAGAZINEで「きもおたわーどぷれす。」が紹介されました! クリックで公式サイトが開きます。

KUSANAGIで作業用ユーザーを作る、ついでにsudoの説明もする【初心者向け・KUSANAGI9】

この記事は約8分で読めます。
記事内に広告が含まれています。

本稿ではKUSANAGIで作業用ユーザー(一般ユーザー)を作ってsudoできるようにします。
sudoの意味すら知らない初心者に向けて書いてますので、わかる方にはまどろこしいと思います。
(わかる方なら本稿を読まないと思いますが)

なお、サーバーによってKUSANAGIのデフォルト設定が異なる可能性があります。
その場合は適宜読み替えてください。
私の環境はConoHa VPSです。

スポンサーリンク

はじめに #と$

コマンドを見ると頭に「#」と「$」がついています。

どちらも入力する必要はないよ

かつて私はこれでドハマリしました。

そして#と$が混在していますが、

気にしなくていいです

rootか作業用ユーザーかの違いなだけですので。

本来はこんなに混在することはないのですが。
本稿は作業用ユーザーを作るという内容のため混在しています。
初心者の方は深く考えず読み進めてください。

スポンサーリンク

作業用ユーザーを作る

まず、作業用ユーザーの名前とパスワードを考えて

名前は覚えやすければなんでもいいです。
パスワードは長くした方がいいですが、人によってはしょっちゅう使うことになるので覚えやすい方がいいです。
どうしても覚えるのが面倒ならパスワードなしで作業する設定にも後からできます(非推奨ですが)。

ターミナルソフトを起動して、rootでログイン。
黒い画面に次のコマンドを打ち込みます。
ユーザー名はtenzen パスワードはkouganinpoutyouとします。

# useradd tenzen

パスワードを設定します。

# passwd tenzen

パスワードを聞かれたら「kouganinpoutyou」と入力します。

スポンサーリンク

wheelグループに追加する

作業用ユーザーのtenzenに権限を与えるためwheelグループに追加します。
wheelグループはsudoする権限を持つグループです。

# usermod -G wheel tenzen

wheelグループに追加されたか確認します。

# getent group wheel

tenzenが表示されればOKです。

というか、sudoって何?
スポンサーリンク

sudoとは?

sudoはKUSANAGIやるならとても重要なコマンドよ
sudo:一般ユーザーがあるコマンドをroot権限で実行するためのコマンド

文中にコマンドが2回重なってわかりづらいかもしれません。
例を挙げて説明します。

rootからtenzenに切り替えます。
(rootはsu+ユーザー名を入力するとパスワードなしで当該ユーザーに切り替えられます)
サーバーを再起動しようとコマンドを打ち込みます。

# su tenzen
$ reboot

しかし作業用ユーザーのtenzenが実行しようとしても、こんなメッセージが出て怒られます。

Call to Reboot failed: Interactive authentication required.

「実行したければ権限が必要だよ」という意味です。
そこで、コマンドにコマンドを重ねる形で次のように打ち込みます。

$ sudo reboot
[sudo] tenzen のパスワード:
(↑パスワードが必要な設定にしている場合。パス無しにもできます)

これでrebootを実行できます。

sudoをするためには、sudoできる権限を与える必要があります。
そのためwheelグループに追加したわけです。

以降は飛ばしても構いません
急ぎたい方は「sudoの設定をする」に進んでください

 

KUSANAGI9(ConoHa VPS)の場合、wheelグループ以外はsudoできない設定になっています。
そしてwheelグループにはtenzenしかいません。
これがどういう意味か、kusanagiユーザーでテストをしましょう。

一旦rootに戻ってからkusanagiユーザーになります。

$ exit
# su kusanagi
$ sudo reboot
あなたはシステム管理者から通常の講習を受けたはずです。
これは通常、以下の3点に要約されます:
#1) 他人のプライバシーを尊重すること。
#2) タイプする前に考えること。
#3) 大いなる力には大いなる責任が伴うこと。
[sudo] kusanagi のパスワード:
kusanagi は sudoers ファイル内にありません。この事象は記録・報告されます。

sudoできずに怒られます。
パスワードが合っていても怒られます。
権限がないのですからどうやってもsudoできません。

言ってみれば、

tenzenの方がkusanagiより強いということだね

スポンサーリンク

sudoの設定をする

次のコマンドを入力します。

# visudo

編集画面が開きます。
120行目あたりに次の記述があります。

## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL

2行目か4行目のどちらかだけコメントアウト(#のこと)を外します。

2行目と4行目の意味は、

「%wheel ALL=(ALL) ALL」:「wheelグループのユーザーにパスワードありでsudoを許可する」
「%wheel ALL=(ALL) NOPASSWD: ALL」:「(略)パスワードなしでsudoを許可する」

後者はセキュリティ上推奨されません。
通常は2行目のコメントアウトを外して4行目をコメントアウトします。
パスワードなしにするなら自己責任でお願いします。

変更したなら、保存して編集画面を閉じます。

:wq

変更してないなら、そのまま閉じます。

:q

tenzenでsudoを実行してみて、設定通りになっているか確認してください。

スポンサーリンク

鍵を作る

前項の続きならtenzenのままのはずです。
もしrootならtenzenに切り替えます。

# su tenzen

カレントディレクトリ(今、自分がいるディレクトリ)を移動します。
ディレクトリを移動するコマンドは「cd」です。
tenzenのホームディレクトリに移動します。

$ cd /home/tenzen

鍵を格納するフォルダ「.ssh」を作成します。

$ mkdir .ssh

パーミッション(権限)を700にします。

$ chmod 700 .ssh

700の意味は「所有者のみ読み・書き・実行できる」という意味です。
今はわからなくてもいいので、このまま続けてください。

ssh-keygenコマンドで鍵を作成します。

$ ssh-keygen

デフォルトでrsa形式2048ビットで暗号化されます。
この後は色々聞かれますが、全て空打ちでOKです。

Generating public/private rsa key pair.
Enter file in which to save the key (/home/tenzen/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/tenzen/.ssh/id_rsa
Your public key has been saved in /home/tenzen/.ssh/id_rsa.pub

(略)

パスフレーズは任意ですが、私は空打ち2回(パスフレーズ無し)に設定しています。

最後の2行から鍵が2つ出来たことがわかります。
秘密鍵(id_rsa)と公開鍵(id_rsa.pub)です。

公開鍵の名前をauthorized_keysにリネームして、権限を600に変更します。

$ mv ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
$  chmod 600 ~/.ssh/authorized_keys

秘密鍵の内容を表示します。

$ cat .ssh/id_rsa

こんな感じの画面が出ます。

-----BEGIN OPENSSH PRIVATE KEY-----




(英数字の羅列)



-----END OPENSSH PRIVATE KEY-----

この部分をローカル(自分のパソコン)でテキストファイルにコピペします。
ファイル名はtenzen.pem、「改行=LF」で保存します。
(tenzenの部分は自分でつけた名前に変えてください)。

この鍵を使ってログインしてみます。
ログインできたならOK&完了です。

スポンサーリンク

まとめ

昔はこうした情報も出てこず、苦労したものでした。
コードその他設定はできる限り簡素化しています。
一方で自分が当時わからなくて詰まったことは徹底的に付け加えました。
現段階でのKUSANAGI最新版(ConoHa VPS)に完全対応させたつもりです。

お疲れ様~

お疲れ様! ……と言いたいのだけど

次はrootログインを禁止します。
引き続きこちらをお読みください。

KUSANAGIのrootログインを禁止する方法と潜んでいるかもしれない落とし穴【KUSANAGI9・ConoHa VPS】
恐らくKUSANAGIを導入した多くの初心者はrootでログインし作業しているのではないかと思います。 しかしrootログインを許可するのはセキュリティ上の問題...
サイトを始めたい・引っ越したい方へ

おすすめレンタルサーバー「ConoHa WING」
Webサーバー処理速度 国内最速!
サイト管理・カスタマイズのタイパも抜群!
自動化AIのWEXALによって他社より負担を減らせます
各種キャンペーン施策によりコスパも抜群!
ConoHaに初めて入会かつ12か月以上のWINGパックなら
下のボタン経由で契約すると最大5000円の割引が受けられます

この記事を書いた人

素人の備忘録です。
素人がゆえにトラブルにぶつかりまくってきたので、同じように困った方の役に立てたらいいなと思ってます。
8年来のKUSANAGI推し。

元公安調査庁職員、発達障害(ADHD)

天満川 鈴をフォローする
KUSANAGI・WEXAL
タイトルとURLをコピーしました