Ubuntu 관리 가이드

새 Ubuntu VPS를 단계별로 보호하기

새 Ubuntu VPS를 업데이트하고, 별도의 관리자 계정을 만들고, 키 기반 SSH 접근을 검증하고, 노출 서비스를 제한하고, 호스트 방화벽을 켜고, 모니터링과 백업을 준비하십시오. 변경을 순서대로 진행하고 사업자 콘솔을 유지하며 두 번째 연결이 성공할 때까지 기존 SSH 세션을 닫지 마십시오.

핵심 정보

적용 대상
systemd와 OpenSSH를 쓰는 지원 Ubuntu Server
핵심 안전장치
콘솔 접근 유지와 두 번째 세션 시험
인증
사용자별로 암호 구문을 설정해 보호한 SSH 키
복구
독립 백업과 검증된 복원

접근 변경 전 업데이트하고 점검하기

플랫폼이 제공하고 독립 백업이 아님을 이해할 때만 사업자 스냅샷을 만드십시오. 문서화된 초기 방식으로 로그인해 OS 이미지를 확인하고 sudo apt updatesudo apt full-upgrade를 실행합니다. 설정 파일 교체 안내를 읽고 커널이나 핵심 구성요소가 요구하면 sudo reboot를 실행하십시오.

다시 접속해 sudo ss -tulpn으로 수신 서비스를 조사합니다. 모든 공개 수신에는 소유자와 목적이 있어야 합니다. 최소 Ubuntu 클라우드 이미지는 설치 이미지와 다를 수 있으니 활성 서비스를 가정하지 말고 애플리케이션 스택 설치 전 기준 상태를 기록하십시오.

  • 의도적으로 신뢰하는 저장소와 키만 사용합니다.
  • 의존 항목이 아님을 확인한 뒤 불필요한 소프트웨어를 지웁니다.
  • 첫 업그레이드로 끝내지 말고 업데이트를 일정화합니다.

별도의 관리자 계정을 만들고 SSH 키 검증하기

sudo adduser deploy로 별도 계정을 만들고 deploy를 선택한 이름으로 바꾼 뒤 sudo usermod -aG sudo deploy로 관리 권한을 줍니다. 해당 사용자의 ~/.ssh/authorized_keys에 SSH 공개 키를 추가하십시오. 사업자 키 기능이나 ssh-copy-id를 쓸 수 있습니다. 개인 키 파일은 절대 업로드하지 마십시오.

두 번째 터미널에서 ssh deploy@SERVER_IP를 시험하고 sudo -v가 동작하는지 확인합니다. 그 뒤에만 직접 root 및 비밀번호 로그인을 끌지 검토하십시오. sudoedit /etc/ssh/sshd_config.d/60-local-hardening.conf로 추가 설정을 편집하고 PermitRootLogin no, PasswordAuthentication no를 설정합니다. sudo sshd -t로 검증한 뒤 sudo systemctl reload ssh로 다시 읽고 기존 세션을 둔 채 재시험하십시오.

  • 예시 이름과 주소를 모두 명시적으로 바꿉니다.
  • 로컬 암호 구문과 비밀번호 관리자 또는 안전한 에이전트를 씁니다.
  • 검증 실패 시 파일을 고치고 SSH를 다시 읽지 않습니다.

필요한 네트워크 서비스만 허용하기

Ubuntu UFW는 편리한 호스트 방화벽 인터페이스입니다. SSH가 예상 포트를 쓰는지 확인하고 sudo ufw allow OpenSSH로 허용하십시오. 포트를 의도적으로 바꿨다면 일치하는 규칙을 만듭니다. sudo ufw status verbose로 상태를 확인하고 sudo ufw enable로 켠 뒤 기존 터미널을 닫기 전 새 터미널에서 접근을 검증합니다.

애플리케이션 포트는 서비스 설치와 준비가 끝난 뒤에만 여십시오. 웹 서버는 흔히 TCP 80과 443을 쓰지만 보편 목록은 없습니다. 사업자 방화벽과 UFW는 보완할 수 있으므로 사고 대응자가 차단 계층을 알게 둘 다 문서화하십시오.

  • SSH 허용 규칙 없이 원격으로 기본 거부 방화벽을 켜지 않습니다.
  • 비공개 데이터베이스는 로컬 또는 사설 인터페이스에 바인딩합니다.
  • 소프트웨어 배포 뒤 sudo ss -tulpn을 다시 실행합니다.

강화를 일상 운영으로 만들기

sudo apt install unattended-upgrades로 자동 보안 업데이트를 설치·검토하고 유지보수 및 재부팅 정책에 맞게 설정합니다. 디스크, 메모리, 인증 실패, 서비스 상태, 인증서 만료, 백업 결과를 감시하십시오. 인증과 네트워크 제한 없이 모니터링 에이전트를 노출하지 마십시오.

독립된 버전 백업을 만들고 격리된 시험 시스템에 복원하십시오. 복구 코드와 콘솔 지침은 VPS와 별도로 보관합니다. 보안 설정은 변하므로 운영 전 이 일반 점검표를 최신 Ubuntu 문서와 애플리케이션 요건에 대조하십시오.

  • 관리자 계정과 키를 정기 검토합니다.
  • OS와 애플리케이션 모두 패치합니다.
  • 로그인 방법을 없애기 전 복구 경로를 문서화합니다.

출처

  1. Ubuntu Server 방화벽 문서
  2. Ubuntu 보안 문서
자주 묻는 질문

자주 묻는 질문

SSH 포트를 바꿔야 하나요?

일상 스캔 잡음을 줄일 수 있지만 키 인증, 패치, 접근 제어, 모니터링을 대신하지 않습니다. 바꾸면 모든 방화벽 계층을 갱신하고 세션 종료 전 시험하십시오.

root 로그인을 즉시 끌 수 있나요?

별도 사용자 계정이 키로 인증하고 필요한 sudo 권한을 얻어 독립된 세션으로 재접속한 뒤에만 가능합니다. 콘솔 복구도 유지하십시오.

UFW만으로 VPS가 안전한가요?

아닙니다. 방화벽은 네트워크 도달성을 제한할 뿐 취약한 소프트웨어, 탈취 인증정보, 애플리케이션 로직을 고치거나 백업을 대신하지 않습니다.