がらくたネット

アフィリエイト広告を利用しています


ホスティング用ユーザ作成

ホスティング用ユーザ作成

newuserコマンドを利用して@付ユーザを作成する方法
入力はテキストファイルで、書式は/etc/passwdと同等
ただし、パスワード部分は平文なので取り扱いは要注意!

機能

  • ユーザアカウント作成
  • ホームディレクトリ作成
  • ユーザグループ作成
  • ユーザパスワード作成→MD5で暗号化される
  • ホームディレクトリのパーミッション設定→UIDとGIDを設定し700となる
  • skelファイルのコピーはしない

結果的に、newuserコマンドでユーザを作成した後skelファイルをコピーする必要がある

# newuser <入力ファイル>

<入力ファイル書式>
ユーザ名:平文パスワード:UID:GID:コメント:ホームディレクトリ:シェル

ユーザ作成自動化

expectを利用して手動入力する部分を自動化させる
これによりコマンドベースでの入力を自動化!

expectパッケージをインストールしておく

# rpm -y install expect
expectを利用して作成したユーザのパスワードを設定する

USER=ユーザ名
PASS=パスワード
adduser $USER
expect -c "
 set timeout 3
 spawn \"passwd\" $USER
 expect \"New UNIX password:\"
 sleep 1
 send \"$PASS\r\"

 expect \"Retype new UNIX password:\"
 sleep 1
 send \"$PASS\r\"
 expect \"#\"
"