OpenWrt 19.07 でマルチユーザー環境を構築

実行環境

ルーター
Linksys WRT1900ACS
OS
OpenWrt 19.07.3

一般ユーザーを追加

初期状態では root ユーザーのみで一般ユーザーが存在しないので一般ユーザーを追加します。 useradd コマンドも使用できないので opkg でインストールします。

# opkg update
# opkg install shadow-useradd

useradd コマンドで一般ユーザーを追加します。シェルは busybox ビルトインの ash を指定します。同時に追加するユーザー名と同名のグループを作成してメンバーにします。

# useradd -m -d /home/<USERNAME> -s /bin/ash -U <USERNAME>
-m
ホームディレクトリを作成
-d
ホームディレクトリのパスを指定
-s
シェルを指定
-U
ユーザー名と同じ名前のグループを作成して新しいユーザーをメンバーにする

一般ユーザーにパスワードを設定します。

# passwd <USERNAME>

一般ユーザーに sudo 権限を付与

sudo コマンドもインストールされていないのでまずはインストールします。

# opkg install sudo

visudo コマンドで /etc/sudoers を編集し、sudo の設定をします。

# visudo

sudo グループユーザーが sudo コマンドを利用できるようにするため、以下の行のコメントを解除して有効化します。

%sudo ALL=(ALL) ALL

グループを編集するために groupadd と usermod コマンドをインストールします。

# opkg install shadow-groupadd shadow-usermod

sudo システムグループを作成します。

# groupadd --system sudo

一般ユーザーを sudo グループに追加します。

# usermod -a -G sudo <USERNAME>
-a
ユーザーのサブグループを追加する。-G オプションと併用
-G
サブグループのリストを指定する。複数指定時はカンマで区切る

su コマンドをインストール

su コマンドも使えないのでインストールしておきます。

# opkg install shadow-su

一般ユーザーに SSH アクセスを許可

一般ユーザーのホームディレクトリに公開鍵を保存して、SSHでアクセスできるようにします。

# su - <USERNAME>
$ mkdir ~/.ssh/
$ chmod 700 ~/.ssh

(ローカル PC で作業) OpenWrt ではなくローカルの PC で公開鍵を作成するか、すでにある鍵を利用します。Linux か mac の場合は以下のコマンドで作成できます。

$ ssh-keygen -t rsa -b 4096 -C "<COMMENT OF THIS KEY>" -f ./ssh_key
$ cat ./ssh_key.pub

(OpenWrt で作業) ~/.ssh/authorized_keys に公開鍵をペーストします。

$ vi ~/.ssh/authorized_keys

authorized_keys ファイルのパーミッションを変更します。

$ chmod 600 ~/.ssh/authorized_keys

参考

コメントを残す

メールアドレスが公開されることはありません。