0
0
0
share
#ubuntu#SSH#server#network-admin
0 Komentar
Yang Perlu Dilakukan Setelah Memasang Server Ubuntu 16.04
Pendahuluan
Saat pertama memasang server Ubuntu 16.04, ada beberapa konfigurasi yang mesti dilakukan di awal. Langkah-langkah ini akan membantu meningkatkan keamanan dan kegunaan dari server kita sehingga memberikan dasar yang baik bagi kehidupan aplikasi yang akan dipasang di server tersebut.
Langkah Pertama — Root Login
Untuk masuk ke server yang telah dipasang, kita perlu tahu alamat IP publiknya. Kita juga perlu tahu password, atau jika memasang SSH key, maka kita juga perlu memiliki private key untuk user "root".
To log into your server, you will need to know your server's public IP address. You will also need the password or, if you installed an SSH key for authentication, the private key for the "root" user's account.
Jika belum masuk, maka lakukanlah terlebih dahulu dengan user `root menggunakan perintah berikut ini:
ssh root@your_server_ip
Tentang Root
User root
merupakan user administrator di lingkungan Linux dengan kemampuan tak terhingga. Karena kemampuannya yang tak ada batas dan dapat melakukan sesuatu yang amat berbahaya (meskipun tanpa sengaja), maka penggunaan user root
tidak disarankan dikehidupan sehari-hari.
Langkah berikutnya ialah kita akan membuat akun user baru dengan kemampuan yang dibatasi untuk pekerjaan sehari-hari.
Langkah Kedua — Membuat User Baru
Setelah masuk sebagai user root
, kita sekarang sudah siap untuk membuat akun user baru sebagai penggantinya. Contoh di bawah ini kita akan membuat user baru dengan akun "sammy", namun kita perlu menggantinya dengan username yang disukai:
adduser sammy
Akan ada beberapa pertanyaan yang mesti di jawab dan dimulai dengan memasukkan password baru.
Berikan password yang kuat, dan isi informasi-informasi yang dianggap penting. Pertanyaan yang wajib diisi hanya password, sisanya dapat dilewati dengan menekan tombol ENTER
bila diinginkan.
Langkah Ketiga — Root Privileges
Sekarang, kita telah memiliki akun user baru dengan hak biasa. Namun, terkadang kita masih perlu melakukan aksi yang hanya bisa dilakukan oleh administrator.
Daripada keluar dari akun user biasa lalu masuk lagi dengan akun root, kita akan menyiapkan sesuatu yang dikenal dengan istilah "superuser" atau hak root
(alias root privileges) ke akun user biasa yang telah kita buat. Dengan demikian akun user biasa kita dapat menjalankan perintah-perintah root menggunakan kata kunci sudo
.
Untuk menambah hak ini, kita perlu memasukkan akun tadi ke grup "sudo". Di Ubuntu 16.04. apabila seorang user dimasukkan ke dalam grup "sudo" maka ia dapat melakukan perintah sudo
.
Login dulu sebagai root
, lalu jalankan perintah berikut untuk menambahkan akun user tadi ke grup "sudo":
usermod -aG sudo sammy
Sekarang user baru yang sudah kita buat dapat menjalankan perintah-perintah administrator.
Langkah Keempat — Menambahkan Public Key Authentication
Langkah berikutnya untuk mengamankan server Ubuntu baru ialah dengan menambahkan public key authentication untuk user tadi. Pengaturan ini akan meningkatkan keamanan server yang akan meminta private SSH tiap kali login.
Membuat sebuah Key Pair
Jika belum memiliki sebuah SSH key pair yang terdiri dari key publik dan private, maka kita perlu membuatnya terlebih dahulu. Jika sudah ada, lewati ke langkah berikutnya.
Untuk membuat key pair baru, masukkan perintah di bawah ini di komputer lokal dan bukan di server :
ssh-keygen
Bila user di komputer lokal bernama "localuser", kita akan melihat hasil yang seperti ini:
ssh-keygen outputGenerating public/private rsa key pair.
Enter file in which to save the key (/Users/localuser/.ssh/id_rsa):
Tekan enter untuk menerima (atau masukkan nama baru untuk filenya).
Kemudian, kita akan diminta memasukkan sebuah passphrase, semacam password untuk mengamankan key tadi. Kita boleh tidak mengisi passphrase-nya (lebih baik jika diisi).
Catatan: Jika dikosongkan, kita tidak akan dimintai passphrase saat melakukan koneksi nantinya menggunakan private key. Lalu, jika diberikan passphrase, saat melakukan koneksi kita juga akan dimintai apa passphrase yang dimasukkan. Mengamankannya dengan passphrase akan lebih baik dibanding tidak. Akan tetapi keduanya masih tetap lebih baik dibanding melakukan otentikasi password biasa.
Perintah di atas akan membuat private key baru, id_rsa
, dan sebuah public key, id_rsa.pub
, di dalam direktori .ssh
di direktori home user bernama localuser. Selalu ingat untuk tidak berbagi private key kepada orang-orang yang tidak seharusnya memiliki akses.
Salin Public Key
Setelah membuat sebuah SSH key pair, kita kemudian perlu membuat salinan public key ke server. Ada dua cara yang dapat dilakukan.
Opsi 1: Gunakan ssh-copy-id
Jika komputer kita memiliki skrip ssh-copy-id
, kita bisa memakainya untuk memasang public key ke server.
Jalankah skrip ssh-copy-id
dengan memberikan akun dan alamat IP dari server yang ingin dipasangkan:
ssh-copy-id sammy@your_server_ip
Setelah memberikan password yang diminta, public key kita akan ditambahkan ke file .ssh/authorized_keys
. Private key yang satunya lagi sekarang bisa dipakai untuk masuk ke server.
Opsi 2: Memasang Key Secara Manual
Lakukan perintah berikut untuk membaca isi file id_rsa.pub
:
cat ~/.ssh/id_rsa.pub
Perintah di atas akan mencetak public SSH key dengan hasil seperti berikut:
id_rsa.pub contentsssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJAhme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxmzTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhva+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBnWSUdf localuser@machine.local
Salin dulu kode yang dihasilkan.
Jika masuk sebagai root
, ganti dulu ke user biasa dengan perintah di bawah:
su - sammy
Sekarang kita seharusnya sudah ada di direktori home user sammy (atau user yang sudah dibuat).
Buat direktori baru bernama .ssh
dan atur permission-nya menjadi:
mkdir ~/.ssh
chmod 700 ~/.ssh
Sekarang buat/buka sebuah file di direktori .ssh
bernama authorized_keys
dengan sebuah editor, misalnya nano
:
nano ~/.ssh/authorized_keys
Tempelkan/paste kode public key yang tadi dihasilkan.
Tekan CTRL-x
untuk keluar dari nano
, lalu tekan tombol y
untuk menyimpan perubahan. Tekan ENTER
untuk konfirmasi.
Selanjutnya atur lagi permission authorized_keys dengan perintah berikut:
chmod 600 ~/.ssh/authorized_keys
Tulis perintah berikut untuk kembali menjadi root
:
exit
Sekarang public key sudah terpasang dan kita sudah bisa terhubung ke server menggunakan SSH key sebagai user biasa.
Langkah Kelima — Disable Password Authentication
Karena user biasa sudah bisa masuk menggunakan SSH key, kita dapat meningkatkan keamanan server lebih lanjut dengan men-disable otentikasi password bawaan. Dengan demikian hanya orang-orang yang memiliki SSH key yang dapat masuk.
Catatan: Pastikan sudah bisa melakukan koneksi menggunakan SSH key. Jika tidak langkah selanjutnya akan membuat kita tidak dapat masuk ke server.
Langkah pertama, sebagai root atau **user baru dengan perintah sudo **, buka konfigurasi SSH daemon:
sudo nano /etc/ssh/sshd_config
Cari baris yang mengatur PasswordAuthentication
, hapus tanda #
, lalu tambahkan nilai "no" seperti pada contoh di bawah:
sshd_config — Disable password authentication
PasswordAuthentication no
Berikut adalah dua pengaturan lainnya yang penting bagi proses otentikasi menggunakan SSH key saja. Jika belum pernah mengubahnya, kita tidak perlu otak-atik dua baris ini:
sshd_config — Important defaults
PubkeyAuthentication yes
ChallengeResponseAuthentication no
Jika sudah selesai, simpan file dan tutup nano
dengan cara yang sama dengan sebelumnya (CTRL-X
, lalu Y
, lalu ENTER
).
Ketikkan perintah berikut untuk me-restart SSH daemon:
sudo systemctl reload sshd
Otentikasi menggunakan password sekarang telah di-disable. Sekarang kita hanya bisa masuk ke server menggunakan SSH key.
Langkah Keenam — Test Log In
Sekarang, sebelum keluar dari server, kita perlu menguji pengaturan yang telah dilakukan. Jangan keluar dulu sampai sudah bisa login lewat SSH.
Buka jendela terminal baru di komputer lokal, kemudian login ke server menggunakan akun user yang sudah kita buat. Untuk melakukannya, gunakan perintah berikut (ganti dengan username dan alamat IP yang dimiliki):
ssh sammy@your_server_ip
Jika pengaturan otentikasi menggunakan public key yang sudah dilakukan benar, maka kita akan masuk ke server. Jika tidak, maka kita akan diminta untuk memasukkan password user.
Catatan: Jika saat membuat key pair pembaca memasukkan sebuah passphrase, maka saat melakukan koneksi kita akan dimintai passphrase tadi. Jika dikosongkan, maka kita akan masuk ke server tanpa passphrase.
Jika berhasil masuk tanpa diminta password user sammy (atau user yang sudah dibuat sendiri), maka artinya proses tadi sudah berhasil.
Langkah Ketujuh — Mengatur Firewall
Server Ubuntu 16.04 dapat diatur dengan firewall UFW untuk memastikan bahwa hanya koneksi ke beberapa service yang diijinkan. Kita dapat mengatur sebuah firewall dasar menggunakan aplikasi ini.
Aplikasi-aplikasi lain nanti dapat ditambahkan profilenya ke UFW saat pemasangan. Profile ini akan mengijinkan UFW untuk mengatur aplikasi tadi berdasarkan nama. OpenSSH, sebuah service yang membuat kita dapat terhubung ke server sekarang, memiliki profile yang terdaftar di UFW. Kita dapat melihatnya dengan perintah:
sudo ufw app list
OutputAvailable applications:
OpenSSH
Kita perlu memastikan firewall mengijinkan koneksi SSH sehingga kita dapat masuk ke server di koneksi berikutnya. Lakukan hal ini dengan perintah:
sudo ufw allow OpenSSH
Lalu kita dapat mengaktifkan firewall dengan perintah:
sudo ufw enable
Tekan "y" lalu ENTER untuk melanjutkan. Kita dapat melihat koneksi SSH masih diijinkan dengan memasukkan perintah:
sudo ufw status
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Jika memasang dan mengatur service baru, kita mungkin perlu mengatur lagi konfigurasi firewall untuk mengijinkan traffic masuk.
Penutup
Sampai di sini, kita sudah memiliki fondasi dasar yang baik bagu server baru kita. Kita sudah dapat memasang software-software lain yang dibutuhkan.
Sumber gambar: omgubuntu
Diterjemahkan dari Initial Server Setup with Ubuntu 16.04 di bawah Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
0
0
0
share