![비밀번호는 없지만 비활성화되지 않은 새 사용자 추가](https://linux55.com/image/161895/%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%EB%8A%94%20%EC%97%86%EC%A7%80%EB%A7%8C%20%EB%B9%84%ED%99%9C%EC%84%B1%ED%99%94%EB%90%98%EC%A7%80%20%EC%95%8A%EC%9D%80%20%EC%83%88%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%B6%94%EA%B0%80.png)
SSH를 통해서만 사용할 수 있는 새 사용자를 추가해야 합니다. 사용자가 추가되면 별표( !
) 대신 느낌표( ) 로 섀도우 파일에 추가되므로 *
"비활성화"되어 sshd에서 사용을 허용하지 않습니다.
기본적으로 활성화된 비밀번호 없이 사용자를 추가하는 방법이 있습니까?
나는 busybox의 adduser 명령을 사용해 보았고 작동했습니다 !
. 마찬가지로 Gentoo의 기본 useradd 명령은 !
.
답변1
사용자를 추가하기 위해 암호화된 비밀번호를 지정할 수 있는 것 같습니다
useradd -p '*' testuser
작은따옴표를 잃어버렸을 때 쉘이 별표를 확장하려고 시도했다는 것을 잊어버렸기 때문에 이전에는 작동하지 않았습니다.
사용해도 될 것 같습니다
usermod -p '*' testuser
또한 기존 사용자의 비밀번호를 별표로 설정하세요.
답변2
Alpine 및 기타 비지박스 기반 배포판에서도 adduser
동작이 유사합니다. 유지되지 않는 임의의 비밀번호로 계정을 생성할 수 있습니다.
이렇게 하려면 /dev/urandom
비밀번호를 생성하고 text 로 변환 base64
한 다음 두 번 에코하여 adduser 명령에 파이프하여( flags 없이 -D
) 사용자 생성 중에 비밀번호를 입력하고 확인할 수 있도록 합니다.
pw="$(head -c 20 /dev/urandom | base64 | head -c 10)"
( echo "$pw"; echo "$pw" ) | adduser foo
또 다른 옵션은 사용자를 생성한 후 파일에서 를 바꾸는 것입니다 !
.*
/etc/shadow
adduser -D foo
sed -i -e "s/^foo:!:/foo:*:/" /etc/shadow