이 adduser
명령 을 사용하여 쉘 스크립트를 통해 사용자 (비활성화 된 비밀번호 사용)를 추가 하고 싶습니다 .
기본적으로 adduser
다양한 값 (예 : 전체 이름)을 입력하라는 메시지가 표시됩니다. 명령 행을 통해 이러한 값을 제출할 수있는 방법이 있습니까? 아니면 useradd
대신 해야 합니까?
답변
대화식 부분 --gecos
을 건너 뛰 려면 옵션을 사용하십시오 chfn
.
adduser --disabled-password --gecos "" username
모두 맨 페이지에 있습니다. 가장 명백한 공식은 아닙니다.
--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
세부 – 위키 백과
이것이 도움이되기를 바랍니다.
답변
useradd
또한 사용자를 추가 할 수 있으며 프롬프트 형태가 내장되어 있지 않습니다.
useradd -m -p <encryptedPassword> -s /bin/bash <user>
-m
,--create-home
: 사용자 홈 디렉토리 생성-p
,--password
: 사용자 비밀번호를 지정합니다. 사용하지 않도록 건너 뛰기-
-s
,--shell
: 로그온 사용자를위한 기본 셸공백은
SHELL
변수에 지정된 기본 로그인 쉘을 사용 합니다./etc/default/useradd
<user>
로그인 이름으로 대체- 대체
<encryptedPassword>
와 암호화 된 비밀번호
해시 된 비밀번호 생성 :
있습니다 많은 해시 된 암호를 생성 할 수 있습니다 crypt3 구현은. 모든 것은 당신의 해시 암호입니다.
Sha-512 기반
결과 출력 형식 : 해시 메커니즘 ( $6
sha-512의 경우), 임의의 소금 (두 번째 달러 기호 뒤의 8 바이트 $ASDF1234
), 나머지는 페이로드입니다.
-
mkpasswd
mkpasswd -m sha-512
( 패키지에서
mkpasswd
제공whois
)
DES 기반 :
결과 출력 형식 : 처음 2 바이트는 소금이고 나머지는 페이로드입니다. 모든 것은 해시 된 비밀번호입니다.
- mkpasswd :
mkpasswd
(whois
패키지에서 제공 ) - openssl :
openssl passwd -crypt
- 펄 :
perl -e "print crypt('password');"
- 파이썬 :
python3 -c 'import crypt; print(crypt.crypt("password"))'