루트 사용자로 Linux VM에 연결


이 문서에서는 Linux 가상 머신(VM) 인스턴스에 루트 사용자로 연결하여 VM에 대한 수퍼유저 권한을 사용 설정하는 방법을 설명합니다. 기본적으로 공개 이미지로 빌드된 Compute Engine VM 및 대부분의 일반적인 운영체제에서는 SSH를 사용한 비밀번호가 포함된 루트 로그인을 허용하지 않습니다.

VM에 루트 사용자로 연결하는 대신 sudo를 통해 명령어를 실행할 수도 있습니다. 이 방법은 루트 로그인을 사용 설정하는 대신 사용하는 것이 좋습니다.

지원되는 운영체제

이러한 연결 방법은 Compute Engine에서 사용할 수 있는 모든 공개 Linux 이미지에 지원됩니다. Fedora CoreOS 이미지의 경우 이러한 방법을 사용하기 전에 SSH 액세스를 설정해야 합니다.

루트 로그인 사용 설정

기본적으로 Compute Engine VM에서는 /etc/ssh/sshd_config SSH 구성 파일에서 PermitRootLogin 매개변수를 prohibit-password 또는 no로 설정합니다. VM의 안내에 따라 루트 로그인을 사용 설정합니다.

OS 로그인 VM

다음을 수행하여 루트 로그인을 사용 설정합니다.

  1. SSH 키를 만듭니다. 나중을 위해 공개 SSH 키를 복사합니다.

  2. 평소와 같이 VM에 연결합니다.

  3. 다음 명령어를 실행하여 /etc/ssh/sshd_config 파일에서 PermitRootLogin noPermitRootLogin prohibit-password로 변경합니다.

    sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
    
  4. 다음 명령어를 사용하여 /root/.ssh 디렉터리를 만듭니다.

    sudo mkdir /root/.ssh
    
  5. 다음 명령어를 실행하여 .ssh 디렉터리에 대한 권한을 설정합니다.

    sudo chmod 700 /root/.ssh
    
  6. 다음 명령어를 실행하여 authorized_keys 파일을 만듭니다.

    sudo touch /root/.ssh/authorized_keys
    
  7. 다음 명령어를 실행하여 authorized_keys 파일에 대한 권한을 설정합니다.

    sudo chmod 600 /root/.ssh/authorized_keys
    
  8. 공개 SSH 키를 /root/.ssh/authorized_keys 파일에 붙여넣습니다.

  9. VM을 다시 시작하거나 VM 운영체제에 대해 다시 시작 명령어를 실행하여 sshd 데몬을 다시 시작합니다. VM이 재부팅될 때까지 기다린 후 루트 사용자로 연결합니다.

비OS 로그인 VM

다음을 수행하여 루트 로그인을 사용 설정합니다.

  1. 평소와 같이 VM에 연결합니다.

  2. 다음 명령어를 실행하여 /etc/ssh/sshd_config 파일에서 PermitRootLogin noPermitRootLogin prohibit-password로 변경합니다.

    sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
    
  3. VM을 다시 시작하거나 VM 운영체제에 대해 다시 시작 명령어를 실행하여 sshd 데몬을 다시 시작합니다. VM이 재부팅될 때까지 기다린 후 루트 사용자로 연결합니다.

루트 사용자로 연결

루트 로그인을 사용 설정한 후에는 VM에 루트 사용자로 연결합니다. OS 로그인이 사용 설정된 VM에 연결하는 경우 gcloud CLI 대신 타사 도구를 사용해야 합니다.

gcloud

참고: 연결 중인 VM에 OS 로그인이 사용 설정된 경우 타사 도구를 사용하여 루트 사용자로 연결해야 합니다.

VM 이름 앞에 지정된 root@와 함께 gcloud compute ssh 명령어를 사용하여 VM을 루트 사용자로 연결합니다.

  1. Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Google Cloud 콘솔 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  2. 다음 명령어를 실행하여 VM에 연결합니다.

    gcloud compute ssh \
        --project=PROJECT_ID \
        --zone=ZONE \
        root@VM_NAME
    

    다음을 바꿉니다.

    • PROJECT_ID: VM이 포함된 프로젝트의 ID
    • ZONE: VM이 있는 영역의 이름
    • VM_NAME: VM의 이름

서드파티 도구

VM의 안내에 따라 루트 사용자로 VM에 연결합니다.

문제 해결

실패한 SSH 연결 진단 및 해결 방법을 찾으려면 SSH 문제 해결을 참조하세요.

다음 단계