Deskripsi Masalah
Koneksi remote gagal: Saat mencoba terhubung ke instans Linux menggunakan client Secure Shell (SSH) pihak ketiga (seperti PuTTY, XShell, atau SecureCRT), koneksi gagal dengan pesan error
Access deniedatauPermission denied, please try again..Log keamanan sistem: File log sistem
/var/log/secureberisi pesan sepertinot allowed because.
Penyebab
Secara default, layanan SSH pada instans Linux mengizinkan semua user sistem untuk masuk menggunakan kredensial mereka (kata sandi atau kunci). Namun, jika policy pembatasan akses diaktifkan dalam file konfigurasi layanan SSH /etc/ssh/sshd_config, konfigurasi yang salah dapat mencegah user tertentu untuk masuk ke instans.
AllowUsers: Whitelist pengguna. Hanya pengguna yang tercantum yang diizinkan masuk.
DenyUsers: Blacklist pengguna. Pengguna yang tercantum ditolak untuk masuk.
AllowGroups: Whitelist grup pengguna. Hanya pengguna dari grup yang tercantum yang diizinkan masuk.
DenyGroups: Blacklist grup pengguna. Pengguna dari grup yang tercantum ditolak untuk masuk.
Kebijakan penolakan (Deny*) memiliki prioritas lebih tinggi daripada kebijakan izin (Allow*). Jika seorang pengguna sesuai dengan kedua kebijakan tersebut, akses akan ditolak.
Solusi
Masuk ke instans ECS menggunakan koneksi VNC.
Buka ECS console - Instances. Di bilah navigasi atas, pilih wilayah dan resource group yang dituju.
Buka halaman detail instans yang dituju. Klik Connect dan pilih VNC. Masukkan username dan kata sandi untuk masuk ke instans ECS.
Periksa dan modifikasi file konfigurasi SSH.
Buat backup file konfigurasi agar dapat dipulihkan jika terjadi error.
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bakTemukan dan sesuaikan kebijakan kontrol akses.
sudo vi /etc/ssh/sshd_configUbah file menggunakan salah satu metode berikut:
Metode 1: Nonaktifkan semua aturan pembatasan
Untuk menghapus pembatasan, tambahkan tanda
#di awal setiap baris parameterAllowUsers,DenyUsers,AllowGroups, danDenyGroups. Tindakan ini akan mengizinkan semua user sistem untuk masuk.# AllowUsers userA userB # DenyUsers userCMetode 2: Perbaiki aturan pembatasan
Untuk menghindari ambiguitas, jangan gunakan kebijakan whitelist (
Allow*) dan blacklist (Deny*) secara bersamaan.Gunakan kebijakan whitelist (jika hanya pengguna tertentu yang boleh masuk)
Pertahankan hanya parameter
AllowUsersatauAllowGroups. Tambahkan pengguna atau grup pengguna yang memerlukan akses masuk ke dalam daftar. Lalu, nonaktifkan atau hapus semua parameterDeny*.AllowUsers userA userB newUser # DenyUsers userCContoh ini hanya mengizinkan
userA,userB, dannewUseruntuk masuk, serta menolak semua user lain.Gunakan kebijakan blacklist (jika hanya user tertentu yang perlu diblokir)
Pertahankan hanya parameter
DenyUsersatauDenyGroups. Tambahkan pengguna atau grup pengguna yang ingin Anda blokir ke dalam daftar. Lalu, nonaktifkan atau hapus semua parameterAllow*.# AllowUsers userA userB DenyUsers userC userDContoh ini menolak akses untuk
userCdanuserD, tetapi mengizinkan semua pengguna lain untuk masuk.
Restart layanan SSH untuk menerapkan konfigurasi baru.
sudo systemctl restart sshd.serviceJika layanan gagal dimulai, jalankan perintah
cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_configuntuk memulihkan file konfigurasi dari backup.Coba masuk lagi ke instans menggunakan client SSH pihak ketiga Anda untuk memastikan masalah telah teratasi.