많은 호스트에서 PK를 사용하여 많은 SSH 사용자 생성

많은 호스트에서 PK를 사용하여 많은 SSH 사용자 생성

많은 호스트(비밀번호가 없는 루트 SSH가 있는 경우)에서 공개 키를 사용하여 한 명 이상의 새 사용자를 추가하고 싶습니다. 물론 수동으로 만들 수도 있어요. 향기롭게 만드는 방법이 있나요?

답변1

프로그래밍 방식으로 수행하는 방법에는 여러 가지가 있습니다. 나는 필요에 따라 제어 서버에서 다른 시스템으로 사용자 및 자격 증명/키를 푸시하는 스크립트를 작성했으며 Puppet, Chef 및 CFEngine과 같은 자동화 소프트웨어도 풀 메커니즘을 사용하여 이 작업을 수행합니다.

LDAP와 연결할 수도 있습니다. (https://serverfault.com/questions/653792/ssh-key-authentication-using-ldap#653793)

답변2

init-user-on-host() # <username> <id_rsa.pub file> <remote host>
{
    cat $2 | ssh root@$3 \
        "set -x; adduser --quiet --gecos '' --disabled-password $1;" \
        " su -l $1 -c 'mkdir -p .ssh;" \
        "cat >> .ssh/authorized_keys;" \
        "ls -RA; cat .ssh/authorized_keys' "
    ssh $1@$3 echo OK
}

init-users-on-hosts()
{
    for u in $users; do
        for h in $hosts; do
            init-user-on-host $u $u.id_rsa.pub $h
        done
    done
}

관련 정보