[리눅스] 외부인용 임시 계정 발급하기

[리눅스] 외부인용 임시 계정 발급하기
Photo by Gabriel Heinzer / Unsplash

업무를 하다보면 리눅스 서버에 외부인의 연결을 허용해야 할 때가 있다. 특정 프로그램 설치라던지.. 그 때는 그 담당 직원 전용 계정을 만들어서 전달해야 한다. 여기서는 Ubuntu 24.04를 기준으로 작성한다.

계정 발급

타사 직원용 계정(예: external_vendor)을 생성합니다.

# 계정 생성 (홈 디렉토리 포함)
sudo useradd -m -s /bin/bash external_vendor

# 비밀번호 설정 (임시 비밀번호)
sudo passwd external_vendor

권한 부여

프로그램 설치를 위해서는 보통 관리자 권한이 필요합니다. 루트(root) 비밀번호를 알려주는 대신, 이 계정에 sudo 권한을 부여하세요.

sudo usermod -aG sudo external_vendor

SSH Key 기반 인증

비밀번호를 알려주는 것보다, 상대방의 공개키(Public Key)를 받아서 등록해 주는 것이 훨씬 안전합니다.

  1. 타사 직원에게 "SSH 접속용 공개키(id_rsa.pub 등)를 보내달라"고 요청합니다.

서버에서 해당 사용자의 .ssh 디렉토리에 키를 등록합니다.

# 사용자 전환
sudo su - external_vendor

# .ssh 폴더 생성 및 권한 설정
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# (여기에 받은 공개키 내용을 붙여넣고 저장)

# 파일 권한 설정
chmod 600 .ssh/authorized_keys

4단계: 접속 IP 제한 (방화벽)

가능하다면 타사 직원이 접속할 사무실의 고정 IP를 물어보고, 방화벽(Security Group, iptables, ufw 등)에서 해당 IP에서의 SSH(22번 포트) 접속만 허용하는 것이 가장 안전합니다.


3. 작업 완료 후 조치 (가장 중요)

설치 작업이 모두 끝났다는 통보를 받으면, 반드시 계정을 잠그거나 삭제해야 합니다.

계정 삭제 (데이터 포함 완전 삭제):

sudo userdel -r external_vendor

계정 잠금 (데이터 보존, 접속만 차단):

sudo usermod -L external_vendor

요약

  1. 새 계정을 만든다.
  2. Sudo 권한을 준다 (root 비번 공유 X).
  3. 가능하면 SSH Key 방식을 사용한다.
  4. 작업이 끝나면 즉시 계정을 잠근다.