Setup dan Konfigurasi Server Awal di CentOS 7


Tutorial ini akan menjelaskan langkah-langkah dasar pertama yang perlu Anda lalui setelah menginstal sistem CentOS 7 minimal tanpa lingkungan grafis untuk mendapatkan informasi tentang sistem yang diinstal, perangkat keras yang menjalankan sistem dan mengonfigurasi tugas sistem spesifik lainnya, seperti jaringan, hak akses root, perangkat lunak, layanan, dan lainnya.

Persyaratan

  1. Instalasi Minimal CentOS 7

Penting: Pengguna RHEL 7, dapat mengikuti artikel ini untuk melakukan Pengaturan Server Awal di RHEL 7.

Perbarui Sistem CentOS 7

Langkah pertama yang perlu Anda lakukan pada sistem CentOS yang baru diinstal adalah memastikan sistem mutakhir dengan kernel terbaru dan patch keamanan sistem, repositori dan paket perangkat lunak.

Untuk memperbarui sistem CentOS 7 sepenuhnya, jalankan perintah berikut dengan hak akses root.


yum check-update
yum upgrade

Setelah proses pemutakhiran selesai, untuk mengosongkan ruang disk, Anda dapat menghapus semua paket unduhan yang digunakan dalam proses pemutakhiran bersama dengan semua informasi repositori yang di-cache dengan menjalankan perintah berikut.


yum clean all

Instal Utilitas Sistem pada CentOS 7

Paket utilitas berikut terbukti berguna untuk administrasi sistem sehari-hari: nano (editor teks untuk menggantikan editor vi), wget, curl (utilitas yang digunakan untuk mengunduh sebagian besar paket melalui jaringan) net-tools, lsof (utilitas untuk mengelola jaringan lokal) dan bash-completion (pelengkapan otomatis baris perintah).

Instal semuanya dalam satu kesempatan dengan menjalankan perintah di bawah ini.


yum install nano wget curl net-tools lsof bash-completion

Atur Jaringan di CentOS 7

CentOS 7 memiliki beragam alat yang dapat digunakan untuk mengonfigurasi dan mengelola jaringan, mulai dari mengedit file konfigurasi jaringan secara manual hingga menggunakan perintah seperti ip, ifconfig, nmtui, nmcli atau rute.

Utilitas termudah yang dapat digunakan pemula untuk mengelola dan mengubah konfigurasi jaringan adalah baris perintah grafis nmtui.

Untuk mengubah nama host sistem melalui utilitas nmtui, jalankan perintah nmtui-hostname, atur nama host mesin Anda dan tekan OK untuk menyelesaikan, seperti yang diilustrasikan di tangkapan layar di bawah ini.


nmtui-hostname

Untuk memanipulasi antarmuka jaringan, jalankan perintah nmtui-edit, pilih antarmuka yang ingin Anda edit dan pilih edit dari menu sebelah kanan, seperti yang ditunjukkan pada gambar di bawah.


nmtui-edit

Setelah Anda berada di antarmuka grafis yang disediakan oleh utilitas nmtui Anda dapat mengatur pengaturan IP antarmuka jaringan seperti yang diilustrasikan pada gambar di bawah. Setelah selesai, navigasikan ke OK menggunakan tombol [tab] untuk menyimpan konfigurasi dan keluar.

Untuk menerapkan konfigurasi baru antarmuka jaringan, jalankan perintah nmtui-connect, pilih antarmuka yang ingin Anda kelola dan tekan opsi Nonaktifkan/Aktifkan untuk menonaktifkan dan mengaktifkan antarmuka dengan pengaturan IP, seperti yang ditunjukkan pada gambar di bawah.


nmtui-connect

Untuk melihat pengaturan antarmuka jaringan, Anda dapat memeriksa konten file antarmuka atau Anda dapat mengeluarkan perintah di bawah ini.


ifconfig enp0s3
ip a
ping -c2 google.com

Utilitas berguna lainnya yang dapat digunakan untuk mengatur kecepatan, status tautan, atau memperoleh informasi tentang antarmuka jaringan mesin adalah ethtool dan mii-tool.


ethtool enp0s3
mii-tool enp0s3

Aspek penting dari jaringan mesin Anda adalah membuat daftar semua soket jaringan yang terbuka untuk melihat program apa yang mendengarkan pada port apa dan bagaimana status koneksi jaringan yang dibuat.

Untuk mencantumkan semua server yang telah membuka soket TCP atau UDP dalam status mendengarkan, berikan perintah berikut. Namun, server UDP tidak akan mencantumkan status soket apa pun karena UDP adalah protokol tanpa koneksi yang hanya mengirimkan paket melalui jaringan dan tidak membuat koneksi.


netstat -tulpn
ss -tulpn
lsof -i4 -6

Kelola Layanan di CentOS 7

CentOS 7 mengelola daemon atau layanan melalui utilitas systemctl. Untuk mencantumkan semua status layanan, jalankan perintah berikut.


systemctl list-units

Untuk memeriksa apakah daemon atau layanan diaktifkan untuk memulai secara otomatis ketika sistem dimulai, jalankan perintah berikut.


systemctl list-unit-files -t service

Untuk membuat daftar layanan SysV lama yang ada di sistem Anda dan menonaktifkannya, jalankan perintah chkconfig berikut.


chkconfig --list
chkconfig service_name off

5. Nonaktifkan Layanan yang Tidak Diinginkan di CentOS 7

Disarankan setelah menginstal CentOS 7, untuk membuat daftar layanan apa yang berjalan di sistem dengan menjalankan perintah di atas dan menonaktifkan serta menghapusnya untuk mengurangi vektor serangan terhadap sistem Anda.

Misalnya, daemon Postfix diinstal dan diaktifkan secara default di CentOS 7. Jika sistem Anda tidak memerlukan server email, sebaiknya hentikan, nonaktifkan, dan hapus layanan postfix dengan menjalankan perintah di bawah ini .


systemctl stop postfix
systemctl disable postfix
yum remove postfix

Selain perintah netstat, ss, lsof atau systemctl, Anda juga dapat menjalankan perintah ps, top atau pstree untuk menemukan dan mengidentifikasi layanan apa yang tidak diinginkan yang sedang berjalan di sistem Anda dan menonaktifkan atau menghapusnya.

Secara default, utilitas pstree tidak diinstal di CentOS 7. Untuk menginstalnya, jalankan perintah berikut.


yum install psmisc
pstree -p

Aktifkan Firewall di CentOs 7

Firewalld adalah utilitas firewall utama yang menggunakan interaksi untuk mengelola aturan iptables.
Untuk mengaktifkan dan memulai serta memverifikasi firewall di CentOS 7, jalankan perintah berikut.


systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld

Untuk membuka layanan tertentu ke koneksi masuk, verifikasi terlebih dahulu apakah aplikasi sudah ada dalam aturan firewalld dan, kemudian, tambahkan aturan untuk layanan tersebut, seperti yang ditunjukkan dalam contoh di bawah yang mengizinkan SSH koneksi masuk. Gunakan tombol --permanent untuk menambahkan aturan secara permanen.


firewall-cmd --add-service=[tab]  #List services
firewall-cmd --add-service=ssh
firewall-cmd --add-service=ssh --permanent

Jika layanan sekarang sudah ditentukan dalam aturan firewalld, Anda dapat menambahkan port layanan secara manual, seperti yang ditunjukkan pada contoh di bawah ini.


firewall-cmd --add-port=22/tcp --permanent
firewall-cmd --reload     #Apply the rule on-fly

Aktifkan Izin Sudo di Akun Pengguna

Untuk memberikan izin root kepada pengguna normal, pertama-tama buat pengguna dengan mengeluarkan perintah adduser, atur kata sandi untuk pengguna dan berikan izin root kepada pengguna dengan menjalankan perintah di bawah ini yang menambahkan pengguna baru ke grup roda administratif.


adduser tecmint
passwd tecmint
usermod -aG wheel tecmint

Untuk menguji apakah pengguna baru memiliki hak akses root, login ke sistem dengan kredensial pengguna dan jalankan perintah yum dengan izin sudo, seperti yang ditunjukkan dalam kutipan di bawah ini.


su - tecmint
sudo yum update

Konfigurasikan Otentikasi Kunci Publik SSH di CentOS 7

Untuk mengamankan SSH server Anda dan mengatur otentikasi kunci publik untuk meningkatkan keamanan server Anda dengan kunci SSH pribadi untuk masuk, pertama-tama buat Pasangan Kunci SSH dengan perintah berikut.

Jangan masukkan frasa sandi jika Anda ingin mengotomatisasi manajemen server melalui SSH.


ssh-keygen -t RSA

Setelah pasangan kunci SSH dibuat, salin kunci ke server yang ingin Anda sambungkan dengan mengeluarkan perintah di bawah ini. Awalnya, masukkan kata sandi pengguna SSH jarak jauh Anda untuk menyalin kunci publik.


ssh-copy-id remote_user@SSH_SERVER_IP

Setelah kunci publik SSH disalin ke server jarak jauh, login ke server SSH jarak jauh dengan perintah berikut.


ssh remote_user@SSH_SERVER_IP

Terakhir, untuk mengamankan server SSH, pastikan Anda melarang akses SSH jarak jauh ke akun root dengan membuka file konfigurasi SSH /etc/ssh/sshd_config dengan editor teks Anda sebagai root dan ubah dari Ya hingga Tidak.


PermitRootLogin no

Untuk menerapkan pengaturan ini Anda perlu me-restart layanan SSH agar dapat menggunakan konfigurasi baru.


systemctl restart sshd

Itu saja! Ini hanyalah beberapa pengaturan dan perintah dasar yang perlu diketahui dan diterapkan oleh setiap administrator sistem pada sistem CentOS yang baru diinstal atau untuk melakukan tugas sehari-hari pada sistem.

Untuk mengamankan dan memperkuat server CentOS 7, lihat artikel berikut ini.

  1. Panduan Besar Untuk Memperkuat dan Mengamankan CentOS 7 – Bagian 1
  2. Panduan Besar Untuk Memperkuat dan Mengamankan CentOS 7 – Bagian 2

Jika Anda berencana untuk menerapkan situs web pada sistem CentOS 7 ini, pelajari cara menyiapkan dan mengonfigurasi tumpukan LAMP atau tumpukan LEMP.