SST Lab Dokuwiki Header header picture

ユーザ用ツール

サイト用ツール


linux:bulk_useradd

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
linux:bulk_useradd [2018/05/08 14:21] – 作成 kimilinux:bulk_useradd [2022/08/23 13:34] (現在) – 外部編集 127.0.0.1
行 1: 行 1:
-====== useraddの-pオプション ======+====== ユーザー一括登録 ====== 
 +===== adduserコマンド+chpasswdコマンド ===== 
 + 
 +ubuntuを使う場合はadduser+chpasswdにより、研究室の学生程度なら簡便な方法でユーザーの一括登録ができる。 
 +<code sh> 
 +$ sudo adduser --disabled-login --gecos GECOS t21d001 
 +$ sudo adduser --disabled-login --gecos GECOS t22d004 
 +$ sudo adduser --disabled-login --gecos GECOS t23d008 
 +$ sudo chpasswd 
 +t21d001:平文パスワード 
 +t22d004:平文パスワード 
 +t23d008:平文パスワード 
 +^D 
 +
 +</code> 
 + 
 +===== useraddコマンドの-pオプション ===== 
 +ユーザの一括登録を行う場合などは''-p''オプションを使ってパスワードも同時に設定すると便利。ただし、''-p''オプションの引数は平文パスワードではなくハッシュドパスワードなので''perl''や''python''の''crypt''関数/モジュールを使って変換する。 
 +==== perl版(shから直接) ==== 
 +<code sh> 
 +$ sudo useradd -m -p `perl -e "print(crypt('平文パスワード', '戦略兵器制限交渉'));"` t92e005 
 +</code> 
 +まあ、これが一番単純かな。 
 +==== python版 ==== 
 + 
 +<code sh> 
 +$ python -c "import crypt; print crypt.crypt('平文パスワード','\$6\$塩\$'
 +</code> 
 + 
 +<code python> 
 +>>> import crypt 
 +>>> print crypt.crypt('平文パスワード','\$6\$塩\$'
 +</code> 
 +==== perl版 ==== 
 + 
 + 
 + 
 +<file perl mkaddusers>  
 +#!/usr/bin/perl 
 +my $userid = $ARGV[0]; 
 +my $passwd = $ARGV[1]; 
 +my $hashedpass = crypt($passwd, "\$6\$sa"); 
 +$hashedpass =~ s/\$/\\\$/g; 
 +print "useradd -m -p $hashedpass $userid\n"; 
 +</file> 
 +このファイルでは''crypt''の**salt**は''"sa"''とした。 
 + 
 +上記のようなperlスクリプトを用意しておき、 
 +<code sh> 
 +% ./mkaddusers ユーザ名 平文パスワード > スクリプトファイル名 
 +... 
 +% sudo sh スクリプトファイル名 
 +</code> 
 +のように登録する。 
 + 
 +==== mkpasswd in whois package ==== 
 +whoisパッケージに上記の処理をするコマンドmkpasswdが存在するのでそれを使うというのがファイナルアンサー。
  
linux/bulk_useradd.1525756919.txt.gz · 最終更新: 2022/08/23 13:34 (外部編集)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki