Skip to main content

Ubuntu

Perintah Umum​

pwd Print Working Directory​

Ini adalah perintah untuk mengetahui directory/folder tempat kerja sekarang.

pwd

whoami Siapa Saya​

Perintah ini digunakan untuk mengetahui user yang digunakan saat ini.

whoami

Ganti Port SSH​

Mengecek port SSH​

sudo ss -tulpn | grep ssh

Mengecek status SSH​

sudo systemctl status ssh

Mengganti port SSH​

sudo nano /etc/ssh/sshd_config
  • Hapus # lalu ubah tulisan Port 22 menjadi Port 2200
  • Tanpa menghapus default tulisan #Port 22 dengan cara Enter tambahkan tulisan Port 2200
#...

Include /etc/ssh/sshd_config.d/*.conf

#Port 22
Port 2200 # <- TAMBAHKAN INI
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

#...

Setelah selesai reboot VPS ubuntu Anda.

Masuk SSH dengan Port 2200​

ssh [email protected] -p 2200
NamaKeterangan
sshAplikasi SSH Client Terminal
kaesaUsername Anda
100.100.100.100IP Address VPS Ubuntu Anda
-pPORT (Argument)
2200Port SSH yang telah Anda rubah

Konfigurasi SSH supaya tidak dapat diakses oleh user root​

sudo nano /etc/ssh/sshd_config
  • Ubah PremitRootLogin yes menjadi PremitRootLogin no .
#...

# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwading no
# AllowTcpForwarding no
# PermitTTY no
# ForceCommand no
PremitRootLogin no # Default `yes`

#...

Tambah User​

Jika ada error: fatal: Only root may add a user or group to the system silahkan ganti ke user root dahulu dengan perintah:

sudo su
adduser kaesa
Adding user `kaesa` ...
Adding new group `kaesa` (1001) ...
Adding new user `kaesa` (1001) with group `kaesa` ...
Creating home directory `/home/kaesa` ...
Copying file from `/etc/skel` ...

New password: # Masukan Password
Retype new password: # Ketik ulang password diatas

passwd: password updated successfully
Changing the user information for kaesa
Enter the new value, or press Enter for the default
Full Name []: Kaesa Lyrih # Ketik `Kaesa Lyrih` lalu Enter
Room Number []: # Enter
Work Phone []: # Enter
Home Phone []: # Enter
Other []: # Enter
Is the information corrent? [Y/n] Y # Karena kapital Y berarti default `Y` alias Yes
info: Adding new user `kaesa` to supplemental / extra groups `users` ...
info: Adding user `kaesa` to group `users` ...

Pindah User​

su - kaesa

Memberi akses sudoers ke User baru​

Pastikan anda menggunakan user root lalu ketik perintah berikut:

usermod -aG sudo kaesa

Mengecek Group User​

group
kaesa users wheel sudo

Keluar User​

exit

Management Firewall UFW​

Mengecek Status UFW​

sudo ufw status

Pengecekan Status Lengkap

sudo ufw status verbose

Allow SSH​

sudo ufw allow 22/tcp

Jika sudah diganti port ssh dari 22 menjadi 2200 maka perintahnya berikut:

sudo ufw allow 2200/tcp

Allow http​

sudo ufw allow http
sudo ufw allow 80

Allow https​

sudo ufw allow https
sudo ufw allow 443

Opsi lain allow http dan https​

sudo ufw allow 'Apache Full'
sudo ufw allow 'Nginx Full'

Allow Aplikasi Lain Misal Port 8081​

sudo ufw allow 8081

Mengecek Daftar APP​

sudo ufw app list

Aktifkan UFW​

sudo ufw enable

Menonaktifkan UFW​

sudo ufw disable

Mengaktifkan Ulang UFW​

Jika beberapa pengaturan belum berfungsi jangan lupa melakukan reload.

sudo ufw reload

Menghapus Rule UFW​

sudo ufw status numbered
sudo ufw delete 2
sudo ufw delete allow http
sudo ufw delete allow 'Nginx Full'

Ganti password​

passwd kaesa #enter
# passwod sekarang
# new password
# confirm password

Memasang crul​

sudo apt install curl

Memasang PHP​

sudo add-apt-repository ppa:ondrej/php -y
sudo apt search php8.3 | more
sudo apt install php8.3 php8.3-cli php8.3-common php8.3-curl php8.3-pgsql php8.3-fpm php8.3-gd php8.3-imap php8.3-intl php8.3-mbstring php8.3-mysql php8.3-opcache php8.3-readline php8.3-soap php8.3-xml php8.3-zip php8.3-sqlite3
php -v

Memasang nvm​

sudo apt update
cd ~
sudo su
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm list-remote
nvm install --lts

Memasang Composer​

sudo apt update
cd ~
curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php
HASH=`curl -sS https://composer.github.io/installer.sig`
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer

Memasang nginx​

sudo apt install nginx
sudo systemctl status nginx
cd /etc/nginx
cd sites-available
sudo nano default
  • Ubah yang semula listen 80 menjadi listen 8080 seperti berikut:
# ...
server {
listen 8080 default_server;
listen [::]:8080 default_server;

# ...
}
  • Save: CTRL + X > Y
sudo nano charapon.conf
server {
listen 8081;
listen [::]:8081;
server_name charapon.my.id;
root /var/www/pondokmbodo/public;

# add_header X-Frame-Options "SAMEORIGIN";
# add_header X-Content-Type-Options "nosniff";

index index.html index.php;

charset utf-8;

location / {
try_files $uri $uri/ /index.php?$query_string;
}

# location = /favicon.ico { access_log off; log_not_found off; }
# location = /robots.txt { access_log off; log_not_found off; }

error_page 404 /index.php;

location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}

location ~ /\.(?!well-known).* {
deny all;
}
}
cd ..
cd sites-enabled
sudo ln -s /etc/nginx/sites-available/charapon.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Menghentikan Service Nginx​

Jalankan perintah berikut untuk mematikan layanan Nginx:

sudo systemctl stop nginx

Perintah ini akan menghentikan layanan Nginx yang sedang berjalan.

Nonaktifkan Pengaturan Otomatis Menjalankan Nginx pada saat Startup​

Untuk mencegah Nginx dari memulai secara otomatis setiap kali sistem reboot, jalankan perintah berikut:

sudo systemctl disable nginx

Dengan melakukan ini, Nginx tidak akan dijalankan secara otomatis saat sistem boot.

Verifikasi Status Nginx​

Untuk memastikan bahwa Nginx telah dimatikan dan dinonaktifkan, Anda dapat memeriksa status layanan:

sudo systemctl status nginx

Pastikan statusnya menunjukkan bahwa layanan telah dimatikan (inactive) dan dinonaktifkan (disabled).

Opsional: Hapus Konfigurasi​

Jika Anda tidak berencana untuk menggunakan Nginx lagi, Anda dapat menghapus paket Nginx dari sistem Anda. Namun, pastikan untuk mempertimbangkan dampaknya terhadap aplikasi atau layanan lain yang bergantung pada Nginx.

sudo apt remove nginx

Atau, jika Anda ingin menjaga paket Nginx tetapi tidak menjalankannya secara otomatis, Anda dapat menggunakan perintah apt-mark untuk menandainya sebagai "manual", sehingga tidak akan dihapus secara otomatis oleh manajer paket:

sudo apt-mark manual nginx

Dengan ini, Nginx akan tetap diinstal tetapi tidak akan dijalankan secara otomatis pada startup.

Dengan langkah-langkah di atas, Anda telah mematikan layanan Nginx dan menonaktifkan pengaturan otomatis pada startup.