User root adalah super user yang mempunyai hak tertinggi untuk mengakses semua konfigurasi server. Karena wewenang root yang sangat besar itu, maka tidaklah bijak untuk selalu menggunakan user root ketika login ke server. Karena itu, sangat disarankan kamu perlu user alternatif yang akan selalu kamu pakai ketika login ke server VPS.
Membuat User Baru
- Login dulu ke server VPS dengan PuTTY sebagai root
- Buat user baru dengan nama anggota atau nama lain sesuai seleramu
# adduser anggota
Kamu akan memasukkan password dan beberapa detail tentang userbaru ini.
- Setelah user baru dibuat, maka kamu perlu menambahkan wewenang kepada user ini jika suatu saat akan melakukan tugas-tugas sebagai admin server. Setiap mengetikkan perintah dengan wewenang admin server, maka harus didahului dengan perintah sudo. Untuk melakukan itu, tambahkan user anggota kedalam grup sudo
# gpasswd -a anggota sudo
Jika ingin mengecek apakah user dengan nama anggota sudah masuk di di grup sudo
# groups anggota
maka hasilnya adalah
- Sekarang user anggota telah memiliki akses ke wewenang sebagai root. Selanjutnya kamu keluar dari terminal dengan mengetikkan perintah
# exit
- Selanjutnya, buatlah key ssh untuk user anggota. Saya sudah pernah membuat artikel tentang cara membuat SSH key dengan PuTTY. Artikel itu bisa di lihat di sini.
- Login kembali dengan PuTTY tanpa menggunakan session root. Cukup masukkan alamat ip address droplet Digital Ocean kemudian klik Open
- Login sebagai user anggota
Login PuTTY tanpa SSH Key masukkan password user anggota
- Login berhasil
- Seharusnya saat ini kamu telah berada di directory /home/anggota. Untuk mengeceknya ketikkan perintah
$ pwd
hasilnya seharusnya adalah /home/anggota/
- Buatlah directory .ssh
$ mkdir .ssh $ chmod 700 .ssh
chmod adalah perintah untuk mengubah hak akses terhadap folder ssh. Angka 700 artinya hanya pemilik folder saja yang mempunyai hak akses penuh terhadap folder tersebut. Penjelasan lebih lanjut tentang hak akses akan di jelaskan di artikel terpisah.
- Buatlah sebuah file dengan nama authorized_keys di dalam directory .ssh
$ nano .ssh/authorized_keys
PuTTY akan menampilkan windows seperti gambar di bawah ini
- Jalankan PuTTYgen, kemudian load kembali private key yang telah di buat sebelumnya. Cara membuat private key bisa di baca di sini. Load kembali dengan meng-klik tombol Load seperti gambar di bawah
- Setelah di load, copy public key dan paste ke dalam area window nano pada langkah 11.
- Tekan tombol Ctrl + x, kemudian tekan tombol Y untuk menyimpan, dan tombol Enter untuk menyimpan nama file.
- Keluar dari PuTTY dengan mengetikkan perintah
$ exit
- Buka kembali PuTTY. Sekarang kamu perlu menyiapkan session untuk login sebagai anggota
Membuat PuTTY session yang baru untuk user anggota Masukkan alamat IP address droplet Digital Ocean
- Selanjutnya pada bagian Category > Connection > Data
PuTTY Data Configuration Masukkan username anggota
- Selanjutnya pada bagian Category > Connection > SSH > Auth, pilih private key.
- Kembali ke bagian Category > Session. Kemudian klik tombol save untuk menyimpan session.
- Sekarang klik open, untuk melakukkan koneksi ke server. Hasilnya seperti gambar dibawah
Menonaktifkan Akses Login Root
Setelah kita berhasil membuat userbaru yang akan kita gunakan sehari-hari, maka kamu perlu menutup akses ke root agar tidak disalahgunakan.
- Jika kamu belum login sebagai root, maka login kembali dengan username root
- Edit file ssh configuration
# nano /etc/ssh/sshd_config
- Tekan tombol Crtl + W untuk mencari kata
PermitRootLogin yes
- Gantilah permit login menjadi
PermitRootLogin no
- Simpan file konfiguras dengan menekan tombol Ctrl X, kemudian tombol Y, dan Enter
- Restart kembali service ssh
# service ssh restart
- JANGAN DULU TUTUP SESSION ROOT. Sebelum logout dari session root, buka session baru dan cobalah login dengan username anggota.
- Kemudian cek kembali, apakah username anggota telah masuk ke grup sudo dengan mengetikkan perintah
$ sudo ls
masukkan password username anggota
- Jika tidak ada pesan error apapun, itu artinya username anggota telah bisa berfungsi sebagai root jika semua perintah di awali dengan sudo
- Kembali ke window root, ketikkan exit untuk mengakhiri session.