このadduserコマンドを使用して、シェルスクリプトを介して(パスワードが無効な)ユーザーを追加したいと思います。
デフォルトでadduserは、さまざまな値(例:フルネーム)の入力を求められます。コマンドライン経由でこれらの値を送信する方法はありますか?または、useradd代わりにする必要がありますか?
このadduserコマンドを使用して、シェルスクリプトを介して(パスワードが無効な)ユーザーを追加したいと思います。
デフォルトでadduserは、さまざまな値(例:フルネーム)の入力を求められます。コマンドライン経由でこれらの値を送信する方法はありますか?または、useradd代わりにする必要がありますか?
回答:
--gecosオプションを使用して、chfnインタラクティブ部分をスキップします。
adduser --disabled-password --gecos "" username
すべてmanページにあります。最も明白な処方トーではありません。
--gecos GECOS
Set the gecos field for the new entry generated. adduser will
not ask for finger information if this option is given.
GECOSフィールドは、カンマ区切りのリストFull name,Room number,Work phone,Home phoneです。そのマニュアルページに詳細が記載されているにもかかわらずfinger information -Wikipedia
これがお役に立てば幸いです。
useradd ユーザーを追加することもでき、どのような形式のプロンプトも組み込まれていないようです。
useradd -m -p <encryptedPassword> -s /bin/bash <user>
-m、--create-home:ユーザーのホームディレクトリを作成します-p、--password:ユーザーパスワードを指定します。スキップして無効にします-s、--shell:ログオンユーザーのデフォルトシェル
空白の場合、SHELL変数で指定されたデフォルトのログインシェルが使用されます/etc/default/useradd
<user>ログイン名と<encryptedPassword>て暗号化されたパスワードあり、多くのハッシュされたパスワードを生成することができcrypt3実装のでは。全体がハッシュ化されたパスワードです。
結果の出力形式:ハッシュメカニズム($6sha-512の場合)、ランダムソルト(2番目のドル記号の後の8バイト$ASDF1234)、残りはペイロードです。
mkpasswd mkpasswd -m sha-512
(パッケージmkpasswdによって提供されwhoisます)
結果の出力形式:最初の2バイトはソルト、残りはペイロードです。全体がハッシュ化されたパスワードです。
mkpasswd提供whois)openssl passwd -cryptperl -e "print crypt('password');"python3 -c 'import crypt; print(crypt.crypt("password"))'adduserは異なり、useraddわかりにくい。
-vか、-vvまたは-vvvあなたのsshにいただきました!間違って参照し、SOまたはGoogleでここにあなたのエラーメッセージを検索するためのコマンド。
sudo sed -i"" -e "s/PasswordAuthentication no/PasswordAuthentication yes/" /etc/ssh/sshd_configそしてsudo service ssh restart
adduser、私の(最近の)バージョンのUbuntuには存在しません。