Initial Setup pada Ubuntu Server 20.04

Initial Setup pada Ubuntu Server 20.04 - Setelah kita melakukan installasi Ubuntu Server ada beberapa hal yang harus kita lakukan, Pada tutorial kali ini saya akan memandu Anda langkah-langkah apa saja yang perlu Anda konfigurasi pada Ubuntu server yang baru kita install untuk meningkatkan keamanan dan keandalan server Anda.
Konfigurasi yang di jelaskan pada tutorial kali ini adalah pengaturan awal sebelum kita melakukan installasi service-service server lainnya pada Ubuntu Server 20.04. Pengaturan awal ini bertujuan untuk meningkatkan keamanan dan menyesuaikan konfigurasi dasar yang sesuai dengan keperluan kita.
Berikut hal apa saja yang harus dilakukan setelah installasi Ubuntu server, ikuti step by step cara konfigurasinya.
1. Mengaktifkan user root
Hal pertama yang harus anda lakukan adalah mengaktifkan user root, account root di Ubuntu secara default dinonaktifkan karena kita tidak diminta untuk memasukan password root pada saat installasi. User yang kita buat pada saat installasi diatur sebagai akun administratif dengan sudo, kita dapat menggunakan user root dengan perintah sudo seperti contoh dibawah ini.
kris@ubuntu:~$ sudo -s
[sudo] password for kris: [Masukan Password]
root@ubuntu:~#
Untuk mengaktifkan user root silahkan jalankan perintah berikut.kris@ubuntu:~$ sudo passwd root
[sudo] password for kris: [Masukan User Password]
New password:[Masukan Password Baru]
Retype new password:[Masukan Password Baru]
passwd: password updated successfully
Untuk pengetesan silahkan jalankan perintah su - untuk login menggunakan user rootkris@ubuntu:~$ su -
Password:[Masukan Password Root]
root@ubuntu:~#
2. Membuat User baru
Ada kalanya kita ingin membuat user baru karena lain hal, Jika Anda menginginkan untuk membuat user baru, silahkan jalankan perintah berikut ini.
kris@ubuntu:~$ sudo adduser srv1
Adding user `srv1' ...
Adding new group `srv1' (1001) ...
Adding new user `srv1' (1001) with group `srv1' ...
Creating home directory `/home/srv1' ...
Copying files from `/etc/skel' ...
New password:[Masukan Password]
Retype new password:[Masukan Password]
passwd: password updated successfully
Changing the user information for srv1
Enter the new value, or press ENTER for the default
Full Name []: Server01
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
kris@ubuntu:~$
Jika Anda ingin memberikan Sudo Priviledge pada user baru, jalankan perintah berikutkris@ubuntu:~$ sudo usermod -G sudo srv1
kris@ubuntu:~$ su - srv1
Password:[Masukan Password]
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
Untuk pengetesan coba jalankan perintah rebbot untuk restart system.srv1@ubuntu:~$ sudo reboot
[sudo] password for srv1:[Masukan Password]
Jika Anda ingin menghapus user baru jalankan perintah berikutkris@ubuntu:~$ sudo deluser srv1 --remove-home
Baca Juga : Cara Install Ubuntu Server 20.04
Baca Juga : Cara Setting NTP di Ubuntu Server 20.04
3. Setting IP Address
Salah satu hal penting yang harus kita lakukan adalah konfigurasi IP Address pada system kita, apakah kita ingin mengkonfigurasi IP Address secara DHCP atau Static, untuk file konfigurasi IP Address pada system ubuntu server 20.04 adalah 00-installer-config.yaml yang berada pada direktori /etc/netplan/ contoh dibawah ini adalah konfigurasi network secara DHCP.
root@ubuntu:~# nano /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
ethernets:
enp0s3:
dhcp4: true
version: 2
Untuk konfigurasi IP Address secara Static seperti dibawah ini.root@ubuntu:~# nano /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
ethernets:
enp0s3:
dhcp4: false
addresses: [192.168.0.230/24]
gateway4: 192.168.0.1
nameservers:
search: [example.com]
addresses: [192.168.0.1]
version: 2
root@fossa:~# nano /etc/resolv.conf
# operation for /etc/resolv.conf.
nameserver 192.168.0.231 <== Masukan IP DNS
nameserver 192.168.0.1 <== Masukan IP DNS
search example.com <== masukan nama domain
root@fossa:~# unlink /etc/resolv.conf
root@fossa:~# ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
root@ubuntu:~# netplan apply
Cek interface dengan perintah ip addr atau ip aroot@ubuntu:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:f3:50:e2 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.230/24 brd 192.168.0.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fef3:50e2/64 scope link
valid_lft forever preferred_lft forever
root@ubuntu:~# ping detik.com
PING detik.com (103.49.221.211) 56(84) bytes of data.
64 bytes from s211-cast-211-221-49-103.detik.com (103.49.221.211): icmp_seq=1 ttl=51 time=40.1 ms
64 bytes from s211-cast-211-221-49-103.detik.com (103.49.221.211): icmp_seq=2 ttl=51 time=26.8 ms
64 bytes from s211-cast-211-221-49-103.detik.com (103.49.221.211): icmp_seq=3 ttl=51 time=28.7 ms
64 bytes from s211-cast-211-221-49-103.detik.com (103.49.221.211): icmp_seq=4 ttl=51 time=47.9 ms
^C
--- detik.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 26.835/35.910/47.927/8.603 ms
root@ubuntu:~# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
root@ubuntu:~# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
Cek interfaceroot@ubuntu:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:f3:50:e2 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.230/24 brd 192.168.0.255 scope global enp0s3
valid_lft forever preferred_lft forever
4. Update & Upgrade system
Selanjutnya hal penting yang harus kita lakukan adalah update dan upgrade pada system agar system selalu mendapatkan paket-paket terbaru pada system. silahkan jalankan perintah apt update untuk mendapatkan update terbaru pada system.
root@ubuntu:~# apt update
Hit:1 http://id.archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://id.archive.ubuntu.com/ubuntu focal-updates InRelease [111 kB]
Get:3 http://id.archive.ubuntu.com/ubuntu focal-backports InRelease [98.3 kB]
Get:4 http://id.archive.ubuntu.com/ubuntu focal-security InRelease [107 kB]
...
...
Fetched 1,017 kB in 14s (74.6 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
74 packages can be upgraded. Run 'apt list --upgradable' to see them.
Untuk mengupgrade paket-paket terbaru silahkan jalankan perintah apt upgraderoot@ubuntu:~# apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
motd-news-config
The following packages will be upgraded:
accountsservice alsa-ucm-conf apparmor apport base-files bash bcache-tools
busybox-initramfs busybox-static cloud-init command-not-found
distro-info-data fwupd fwupd-signed gir1.2-glib-2.0 initramfs-tools
initramfs-tools-bin initramfs-tools-core landscape-common
language-selector-common less libaccountsservice0 libapparmor1 libasound2
libasound2-data libdns-export1109 libfwupd2 libfwupdplugin1
libgirepository-1.0-1 libglib2.0-0 libglib2.0-bin libglib2.0-data
libisc-export1105 libldap-2.4-2 libldap-common liblzma5 libnetplan0
libnss-systemd libpam-modules libpam-modules-bin libpam-runtime
libpam-systemd libpam0g libproxy1v5 libsystemd0 libudev1 login netplan.io
open-iscsi open-vm-tools passwd python-apt-common python3-apport python3-apt
python3-commandnotfound python3-distupgrade python3-problem-report
python3-update-manager rsyslog sosreport strace sudo systemd systemd-sysv
systemd-timesyncd tmux ubuntu-minimal ubuntu-release-upgrader-core
ubuntu-server ubuntu-standard udev unattended-upgrades update-manager-core
xz-utils
74 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 19.6 MB of archives.
After this operation, 471 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
5. Setting Hostname
Fungsi hostname adalah untuk mengidentifikasi pada system kita, terkadang kita ingin mengganti nama hostname yang ada pada system kita, jika kita ingin merubah nama hostname pada system silahkan jalankan perintah berikut ini.
root@ubuntu:~# hostname
ubuntu
Merubah nama hostname dari ubuntu ke fossaroot@ubuntu:~# hostname fossa
root@ubuntu:~# hostname
fossa
Untuk mengganti hostname secara permanent silahkan jalankan perintah berikut.root@ubuntu:~# hostnamectl set-hostname fossa
root@ubuntu:~# hostnamectl
Static hostname: fossa
Icon name: computer-vm
Chassis: vm
Machine ID: 7698122c0a9546a2b2b62da1e1aa98b9
Boot ID: 97c535a270f4469ca34d6117b21b51ad
Virtualization: oracle
Operating System: Ubuntu 20.04 LTS
Kernel: Linux 5.4.0-47-generic
Architecture: x86-64
6. Setting Timezone
Setting timezone berfungsi pada system kita bahwa agar waktu yang kita gunakan sesuai dengan wilayah pada zona negara kita. sebelumnya cek dahulu apakah zona waktu sudah berada pada wilayah yang benar.
root@ubuntu:~# timedatectl
Local time: Tue 2020-09-15 17:45:57 UTC
Universal time: Tue 2020-09-15 17:45:57 UTC
RTC time: Tue 2020-09-15 17:45:59
Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
root@ubuntu:~# timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Algiers
Africa/Bissau
Africa/Cairo
...
...
...
Asia/Hovd
Asia/Irkutsk
Asia/Jakarta
Asia/Jayapura
Asia/Jerusalem
Asia/Kabul
Asia/Kamchatka
Untuk setting zona waktu Asia/Jakarta silahkan jalankan perintah dibawah ini.root@ubuntu:~# timedatectl set-timezone Asia/Jakarta
root@ubuntu:~# timedatectl
Local time: Wed 2020-09-16 00:48:37 WIB
Universal time: Tue 2020-09-15 17:48:37 UTC
RTC time: Tue 2020-09-15 17:48:38
Time zone: Asia/Jakarta (WIB, +0700)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
7. Setting Firewall
Secara default firewall pada ubuntu server dalam keadaan inactive jadi kita tinggal mengaktifkannya saja jika kita ingin menggunakan firewall.
root@fossa:~# ufw status
Status: inactive
Untuk mengaktifkan firewall pada ubuntu server silahkan jalankan perintah di bawah ini.root@fossa:~# ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup
root@fossa:~# ufw status
Status: active
Untuk menambahkan service silahkan jalankan perintah berikutroot@fossa:~# ufw allow ssh
Jika kita ingin menambahkan port tertentu jalankan perintah berikutroot@fossa:~# ufw allow 49155
Cek status pada firewallroot@fossa:~# ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
49155 ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
49155 (v6) ALLOW Anywhere (v6)
8. Ganti port 22 SSH
Pada saat installasi Ubuntu server sebenarnya SSH Server sudah terinstall pada system, kita tinggal menggunakannya saja, SSH secara default bekerja pada port 22 dan untuk akses menggunakan user root tidak di ijinkan secara default karena pada settingan permitlogin menggunakan prohibit-password [PermitRootLogin prohibit-password]. selanjutnya kita akan melakukan pengaturan pada port default ssh.
Untuk file konfigurasi ssh adalah sshd_config yang berada pada direktori /etc/ssh/ sebagai contoh disini saya akan merubah dari port 22 menjadi 49155 silahkan lakukan konfigurasi seperti dibawah ini.
root@fossa:~# nano /etc/ssh/sshd_config # The strategy used for options in the default sshd_config shipped with # OpenSSH is to specify options with their default value where # possible, but leave them commented. Uncommented options override the # default value. Include /etc/ssh/sshd_config.d/*.conf Port 49155 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress ::
root@fossa:~# systemctl restart ssh
Kesimpulan
Dengan melakukan beberapa pengaturan seperti diatas pada system kita akan lebih aman dan kegiatan remote session dari sisi Client ke Server yang letaknya berjauhan dari Client akan lebih Secure dengan tidak menggunakan default port ssh.
Posting Komentar untuk "Initial Setup pada Ubuntu Server 20.04"