[리눅스] 외부인용 임시 계정 발급하기
업무를 하다보면 리눅스 서버에 외부인의 연결을 허용해야 할 때가 있다. 특정 프로그램 설치라던지.. 그 때는 그 담당 직원 전용 계정을 만들어서 전달해야 한다. 여기서는 Ubuntu 24.04를 기준으로 작성한다.
계정 발급
타사 직원용 계정(예: external_vendor)을 생성합니다.
# 계정 생성 (홈 디렉토리 포함)
sudo useradd -m -s /bin/bash external_vendor
# 비밀번호 설정 (임시 비밀번호)
sudo passwd external_vendor권한 부여
프로그램 설치를 위해서는 보통 관리자 권한이 필요합니다. 루트(root) 비밀번호를 알려주는 대신, 이 계정에 sudo 권한을 부여하세요.
sudo usermod -aG sudo external_vendorSSH Key 기반 인증
비밀번호를 알려주는 것보다, 상대방의 공개키(Public Key)를 받아서 등록해 주는 것이 훨씬 안전합니다.
- 타사 직원에게 "SSH 접속용 공개키(
id_rsa.pub등)를 보내달라"고 요청합니다.
서버에서 해당 사용자의 .ssh 디렉토리에 키를 등록합니다.
# 사용자 전환
sudo su - external_vendor
# .ssh 폴더 생성 및 권한 설정
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# (여기에 받은 공개키 내용을 붙여넣고 저장)
# 파일 권한 설정
chmod 600 .ssh/authorized_keys4단계: 접속 IP 제한 (방화벽)
가능하다면 타사 직원이 접속할 사무실의 고정 IP를 물어보고, 방화벽(Security Group, iptables, ufw 등)에서 해당 IP에서의 SSH(22번 포트) 접속만 허용하는 것이 가장 안전합니다.
3. 작업 완료 후 조치 (가장 중요)
설치 작업이 모두 끝났다는 통보를 받으면, 반드시 계정을 잠그거나 삭제해야 합니다.
계정 삭제 (데이터 포함 완전 삭제):
sudo userdel -r external_vendor계정 잠금 (데이터 보존, 접속만 차단):
sudo usermod -L external_vendor요약
- 새 계정을 만든다.
- Sudo 권한을 준다 (root 비번 공유 X).
- 가능하면 SSH Key 방식을 사용한다.
- 작업이 끝나면 즉시 계정을 잠근다.