[python] Fabric으로 서버 관리자 계정 설정하기

Fabric은 파이썬 기반의 배포 자동화 도구로, 여러 서버에 명령을 한 번에 실행하고 관리할 수 있습니다. 이 글에서는 Fabric을 사용하여 서버 관리자 계정을 설정하는 방법에 대해 알아보겠습니다.

Fabric 설치

먼저 Fabric을 설치해야 합니다. 터미널에서 다음 명령을 실행하여 Fabric을 설치합니다.

pip install fabric

서버 접속 설정

Fabric을 사용하여 서버에 접속하기 위해서는 먼저 접속할 서버의 정보를 설정해야 합니다. fabfile.py라는 파일을 생성하고 다음과 같이 작성합니다.

from fabric import Connection

c = Connection(host='서버주소', user='사용자이름', connect_kwargs={"password": "비밀번호"})

host에는 접속할 서버의 주소를, user에는 서버에 접속할 사용자의 이름을, connect_kwargs에는 접속할 때 사용되는 비밀번호를 입력합니다.

서버 관리자 계정 설정

다음으로, Fabric을 사용하여 서버 관리자 계정을 설정하는 함수를 작성합니다. fabfile.py에 다음과 같이 함수를 추가합니다.

from fabric import task

@task
def set_admin():
    c.sudo('useradd -m admin')
    c.sudo('passwd admin')

위의 함수에서는 useradd 명령을 사용하여 admin이라는 관리자 계정을 생성하고, passwd 명령을 사용하여 관리자 계정의 비밀번호를 설정합니다. 이 함수는 Fabric을 사용하여 서버에 접속한 후 실행됩니다.

함수 실행

이제, fabfile.py가 있는 디렉토리로 이동한 후, 다음 명령을 실행하여 함수를 실행할 수 있습니다.

fab set_admin

위의 명령을 실행하면, 설정한 서버에 접속하여 set_admin 함수가 실행되고, 관리자 계정이 생성됩니다.

결론

Fabric을 사용하면 쉽게 서버 관리 작업을 자동화할 수 있습니다. 이 글에서는 Fabric을 사용하여 서버 관리자 계정을 설정하는 방법을 다루었습니다. Fabric을 익히고 다양한 작업을 자동화해보세요.