Menghubungkan ke VM Linux sebagai pengguna root


Dokumen ini menjelaskan cara terhubung ke instance mesin virtual (VM) Linux sebagai pengguna root, yang mengaktifkan hak istimewa superuser di VM. Secara default, VM Compute Engine yang dibuat dari image publik dan sistem operasi paling umum tidak mengizinkan login root dengan sandi melalui SSH.

Alternatif untuk terhubung ke VM sebagai pengguna root adalah dengan menjalankan perintah melalui sudo, yang kami rekomendasikan, daripada mengaktifkan login root.

Sistem operasi yang didukung

Metode koneksi ini didukung untuk semua image Linux publik yang tersedia di Compute Engine. Untuk image Fedora CoreOS, Anda harus menyiapkan akses SSH sebelum dapat menggunakan metode ini.

Aktifkan login root

Secara default, VM Compute Engine, menetapkan parameter PermitRootLogin ke prohibit-password atau no di file konfigurasi SSH /etc/ssh/sshd_config. Aktifkan login root dengan mengikuti petunjuk untuk VM Anda:

VM Login OS

Aktifkan login root dengan melakukan hal berikut:

  1. Buat kunci SSH. Salin kunci SSH publik untuk nanti.

  2. Hubungkan ke VM seperti yang biasa Anda lakukan.

  3. Ubah PermitRootLogin no menjadi PermitRootLogin prohibit-password di file /etc/ssh/sshd_config, dengan menjalankan perintah berikut:

    sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
    
  4. Buat direktori /root/.ssh menggunakan perintah berikut:

    sudo mkdir /root/.ssh
    
  5. Tetapkan izin pada direktori .ssh, dengan menjalankan perintah berikut:

    sudo chmod 700 /root/.ssh
    
  6. Buat file authorized_keys dengan menjalankan perintah berikut:

    sudo touch /root/.ssh/authorized_keys
    
  7. Tetapkan izin pada file authorized_keys, dengan menjalankan perintah berikut:

    sudo chmod 600 /root/.ssh/authorized_keys
    
  8. Tempel kunci SSH publik ke file /root/.ssh/authorized_keys.

  9. Mulai ulang daemon sshd dengan memulai ulang VM, atau menjalankan perintah mulai ulang untuk sistem operasi VM Anda. Tunggu hingga VM dimulai ulang, lalu hubungkan sebagai pengguna root.

VM Login Non-OS

Aktifkan login root dengan melakukan hal berikut:

  1. Hubungkan ke VM seperti yang biasa Anda lakukan.

  2. Ubah PermitRootLogin no menjadi PermitRootLogin prohibit-password di file /etc/ssh/sshd_config, dengan menjalankan perintah berikut:

    sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
    
  3. Mulai ulang daemon sshd dengan memulai ulang VM, atau menjalankan perintah mulai ulang untuk sistem operasi VM Anda. Tunggu hingga VM dimulai ulang, lalu hubungkan sebagai pengguna root.

Menghubungkan sebagai pengguna root

Setelah Anda mengaktifkan login root, hubungkan ke VM sebagai pengguna root. Jika terhubung ke VM yang mengaktifkan Login OS, Anda harus menggunakan alat pihak ketiga, bukan gcloud CLI.

gcloud

Catatan: Anda harus menggunakan alat pihak ketiga untuk terhubung sebagai pengguna root jika VM yang Anda hubungkan telah mengaktifkan Login OS.

Hubungkan ke VM sebagai pengguna root menggunakan perintah gcloud compute ssh dengan root@ yang ditentukan sebelum nama VM:

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Hubungkan ke VM dengan menjalankan perintah berikut:

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

    Ganti kode berikut:

    • PROJECT_ID: ID project yang berisi VM
    • ZONE: nama zona tempat VM berada
    • VM_NAME: nama VM

Alat pihak ketiga

Hubungkan ke VM sebagai pengguna root dengan mengikuti petunjuk untuk VM Anda:

Pemecahan masalah

Untuk menemukan metode mendiagnosis dan menyelesaikan koneksi SSH yang gagal, lihat Memecahkan Masalah SSH.

Langkah selanjutnya