Konfigurasi awal server Linux: akun, SSH, pembaruan, dan verifikasi reboot

Siapkan server Linux baru dengan memastikan akses pemulihan, memverifikasi akun administrator biasa dan kunci SSH, lalu memeriksa pembaruan, waktu, port yang diperlukan, serta perilaku setelah reboot. Konfigurasi awal dianggap siap ketika akses pengelolaan dan layanan yang dibutuhkan tetap bekerja melalui sesi baru dan setelah reboot terencana.

Setelah pembuatan akun dan konfigurasi awal, buka sesi baru melalui login kunci SSH untuk memeriksa hak akses sebelum menerapkan perlindungan firewall dan akun. SSH, singkatan dari Secure Shell, menyediakan akses jarak jauh terenkripsi. Pertahankan akses konsol dan sesi semula selama pengujian.

Latihan konfigurasi ini mengacu pada mesin virtual (VM) dengan instalasi biasa Ubuntu 26.04 LTS, yaitu rilis dukungan jangka panjang, atau Rocky Linux seri 9. Konfigurasi layanan dan paket dapat berbeda pada kontainer, Windows Subsystem for Linux (WSL), dan rilis lain. Siapkan pemulihan melalui konsol dan catat versi sesuai panduan persiapan VM berbahasa Inggris.

Memastikan identitas server dan jalur pemulihan

Gunakan VM baru atau server uji, lalu pilih salah satu distribusi: Ubuntu atau Rocky Linux. Pastikan hak administrator, akses konsol, dan prosedur backup atau pembuatan ulang tersedia. Snapshot memudahkan pengembalian keadaan, tetapi tidak otomatis melindungi dari kerusakan penyimpanan yang sama ataupun menjamin konsistensi aplikasi yang sedang berjalan.

cat /etc/os-release
hostnamectl
ip -brief address
ip route
timedatectl
lsblk -f

Catat distribusi, nama host, alamat IP, zona waktu, dan penyimpanan untuk memastikan Anda berada di mesin yang dimaksud. Jangan menyalin nama perangkat, layanan, atau alamat dari latihan lain tanpa pemeriksaan. Jika memakai image cloud, periksa akun awal dan pengaturan yang dikelola cloud-init, yaitu alat penyediaan konfigurasi awal pada mesin.

Membuat atau memverifikasi akun administrator biasa

Gunakan kembali akun administrator yang sudah sesuai. Jika perlu membuat courseadmin, periksa dahulu dengan getent passwd courseadmin bahwa akun itu belum ada. Jika ditemukan, jangan jalankan contoh pembuatan atau ubah haknya tanpa meninjau tujuan akun tersebut. Kegagalan pencarian akibat masalah layanan identitas juga perlu diperiksa.

Blok pertama berikut hanya untuk Ubuntu; blok kedua untuk Rocky Linux. Masukkan kata sandi melalui prompt interaktif, bukan langsung di baris perintah. Tanda && memastikan langkah berikutnya hanya dijalankan setelah langkah sebelumnya berhasil.

sudo adduser courseadmin &&
sudo usermod -aG sudo courseadmin
sudo useradd -m courseadmin &&
sudo passwd courseadmin &&
sudo usermod -aG wheel courseadmin

Jika salah satu langkah gagal, berhenti dan periksa apakah akun sempat dibuat atau kata sandi sempat diatur. Rangkaian ini tidak otomatis membatalkan perubahan yang sudah berhasil. Jangan mengulangnya tanpa memeriksa keadaan akun.

Login dari terminal baru, lalu periksa id dan sudo -v. Grup tambahan belum tentu diperbarui dalam sesi login yang sudah berjalan; kebijakan sudoers tetap menentukan hak sebenarnya. Jika kebijakan perlu diubah, gunakan validasi visudo dan pertahankan sesi administrator semula. Jangan menambahkan hak administrator tanpa kata sandi untuk semua perintah hanya demi kemudahan.

Menguji kunci SSH melalui koneksi kedua

Pilih kunci yang disetujui atau buat kunci baru pada klien, lalu verifikasi sidik jari host server melalui konsol tepercaya. Pasang hanya kunci publik untuk akun tujuan; simpan kunci privat pada klien. Gunakan opsi ssh -i dengan jalur kunci, akun courseadmin, alamat server, dan port yang benar untuk menguji koneksi terpisah. Periksa sudo melalui sesi tersebut sebelum membatasi firewall atau autentikasi.

Periksa listener SSH yang sebenarnya dan aturan akses cloud. Pembatasan kata sandi baru dilakukan setelah autentikasi kunci OpenSSH dan akses pemulihan teruji. Validasi konfigurasi dengan sudo sshd -t sebelum menerapkannya, lalu uji login baru. Koneksi lama yang bertahan dan koneksi baru yang diizinkan merupakan dua pemeriksaan terpisah.

Memperbarui paket serta memeriksa waktu dan nama host

Jalankan hanya blok pembaruan yang cocok dengan distribusi. Pada Ubuntu, pembaruan indeks harus berhasil sebelum melanjutkan upgrade.

sudo apt update &&
sudo apt upgrade
sudo dnf upgrade

Baca transaksi paket yang diusulkan sebelum menyetujuinya. Periksa dampak terhadap restart layanan, perubahan kernel, dan kebutuhan reboot. Sesudahnya, uji fungsi yang benar-benar diperlukan, termasuk layanan aplikasi; keberhasilan login SSH saja belum cukup.

Periksa zona waktu dan sinkronisasi dengan timedatectl. Jika perlu mengubah zona waktu, pilih nama zona IANA yang benar sesuai kebijakan operasional; IANA adalah Internet Assigned Numbers Authority, yang memelihara basis data zona waktu. Aktifnya layanan sinkronisasi tidak membuktikan jam sudah tersinkronisasi, khususnya ketika akses ke server waktu diblokir. Periksa status sinkronisasi aktual dan layanan waktu yang digunakan.

Jika mengganti nama host melalui hostnamectl, tinjau kaitannya dengan Domain Name System (DNS), berkas hosts, sertifikat, dan integrasi pengelolaan. Periksa juga apakah cloud-init atau sistem penyediaan lain akan menimpa nama itu kembali. Catat nilai semula sebelum mengubahnya agar dapat dipulihkan jika integrasi terganggu.

Membatasi port dan menyimpan catatan pembanding

Periksa firewall yang benar-benar digunakan: umumnya UFW pada Ubuntu atau firewalld pada Rocky Linux. Izinkan port pengelolaan yang telah diverifikasi, lalu uji koneksi baru sebelum menambahkan layanan lain yang diperlukan. Tinjau IPv4 dan IPv6 serta kebijakan firewall host dan cloud. Jangan menonaktifkan Security-Enhanced Linux (SELinux), pengendali akses berbasis kebijakan, sebelum menyelidiki masalah sebenarnya.

Jalankan blok Bash berikut sebagai pengguna biasa untuk menyimpan keadaan awal. mktemp -d membuat direktori baru dengan akhiran acak setiap kali, sehingga catatan sebelumnya tidak ditimpa. Semua perintah pengumpulan harus tersedia; jika sebuah perintah gagal, blok berhenti dan hasilnya belum lengkap.

(
    umask 077
    baseline=$(mktemp -d "$HOME/server-baseline.XXXXXXXXXX") || exit 1
    chmod 700 "$baseline" || exit 1
    cat /etc/os-release > "$baseline/os-release.txt" || exit 1
    ip -brief address > "$baseline/addresses.txt" || exit 1
    lsblk -f > "$baseline/storage.txt" || exit 1
    systemctl --failed > "$baseline/failed-units.txt" || exit 1
    printf 'Baseline: %s\n' "$baseline"
)

Jika berhasil, baris terakhir menampilkan jalur seperti Baseline: /home/courseadmin/server-baseline.A1b2C3d4E5; akhiran sebenarnya berbeda. Direktori berisi os-release.txt, addresses.txt, storage.txt, dan failed-units.txt. Periksa isi keempat berkas, jangan hanya keberadaannya. Keluaran systemctl --failed tetap perlu dibaca: berhasil menjalankan pemeriksaan tidak berarti tidak ada unit yang gagal.

Pada Linux, umask 077 dan mode direktori 700 membatasi akses awal untuk pemiliknya; kurung membatasi perubahan umask ke subshell. Jika pengumpulan gagal, direktori yang sudah dibuat dapat berisi catatan parsial dan tidak boleh dianggap baseline lengkap. Pesan galat tetap terlihat di terminal. Perbaiki penyebabnya lalu ulangi untuk memperoleh direktori baru; jangan menghapus bukti yang masih diperlukan.

Perintah ini tidak mengumpulkan kata sandi, kunci privat, atau token. Namun, alamat dan topologi penyimpanan tetap merupakan informasi operasional yang perlu dibatasi aksesnya. Simpan backup konfigurasi secara terpisah dan dokumentasikan cara petugas pemulihan yang berwenang mengambilnya.

Memastikan kesiapan setelah reboot terencana

  1. Pilih waktu penghentian yang disetujui, pastikan konsol dapat digunakan, dan simpan data yang diperlukan.
  2. Jalankan sudo reboot sesuai rencana dan pantau proses boot melalui konsol.
  3. Uji sesi SSH baru, sudo, jaringan, sinkronisasi waktu, layanan yang diperlukan, dan mount.
  4. Periksa systemctl --failed serta log boot saat ini, lalu bandingkan dengan baseline.

Jika tidak dapat terhubung kembali, gunakan konsol untuk memeriksa alamat, status layanan SSH, listener, dan firewall secara berurutan. Pulihkan berdasarkan perubahan terakhir daripada membuat beberapa perubahan spekulatif sekaligus. Lanjutkan pemasangan aplikasi setelah akses pengelolaan terbukti dapat digunakan.

Dokumentasi resmi