Cara Setup VPS dengan Mudah dan Murah di IDCloudhost
Pada artikel ini kita akan belajar mengenai cara setup VPS (Virtual Private Server) mulai dari pembuatan resource, konfigurasi atau pemilihan spesifikasi VPS, setting SSH, setup Apache sebagai web server, virtual host, FTP, Firewall, PHP, Database MySQL dengan engine MariaDB, setup SSL dengan Let's Encrypt dan masih banyak lagi.
Kamu cuma perlu menyiapkan investasi sebesar +- Rp 60.000 saja untuk mulai belajar setup yang biayanya terdiri dari VPS bulanan sebesar Rp 50.000 dan domain berekstensi .my.id sebesar Rp 10.000 saja.
Tanpa panjang lebar lagi silahkan tonton video yang ada dibawah ini dengan memperhatikan atau copy paste perintah yang sudah saya siapkan juga setelah video ini.
Tahapan Install VPS dengan LAMP STACK (Linux, Apache, MySQL dan PHP)
Pastikan sudah membuat resource seperti pada video diatas. Jika belum, maka silahkan daftar melalui link berikut:https://bit.ly/server-lokal-murah-cepat-handal
Jika kamu mendaftar menggunakan link diatas maka akan mendapatkan bonus saldo tambahan sebesar Rp 25.000.Login via SSH
Login ke server via koneksi SSH dengan format:ssh [email protected]_public
Setelah berhasil login, maka update dan upgrade dulu OSnya dengan perintah:
sudo apt update
sudo apt upgrade
SSH
Ganti Port SSH dengan perintah:sudo nano /etc/ssh/sshd_config
Cari baris opsi #Port 22, hapus simbol # dan ganti nomor 22 ke yang lain, misalnya: 60000.
Port 60000 merupakan custom port sesuai pilihan Anda, pilihannya mulai dari 49152 - 65535.
Tutup akses login user ROOT
sudo nano /etc/ssh/sshd_config
Ganti nilai PermitRootLogin menjadi no
Restart service ssh, cek status SSH, keluar dari akses SSH dan coba login kembali ke SSH
sudo systemctl restart ssh
sudo systemctl status ssh
exit
ssh [email protected]_public
APACHE
sudo apt install apache2
sudo systemctl status apache2
Buat Folder Web
sudo mkdir /var/www/belajarvps.my.id
Buat User FTP Baru
sudo adduser namauser
Set Permission
sudo chown -R www-data:ftpbelajarvps /var/www/belajarvps.my.id
sudo chmod -R 775 /var/www/belajarvps.my.id
Virtual Host
sudo nano /etc/apache2/sites-available/belajarvps.my.id.conf
Lalu isikan baris dibawah ini di dalam file belajarvps.my.id.conf:
<VirtualHost *:80>
ServerName belajarvps.my.id
ServerAlias www.belajarvps.my.id
ServerAdmin [email protected]
DocumentRoot /var/www/belajarvps.my.id
ErrorLog /var/log/apache2/belajarvps.my.id_error.log
CustomLog /var/log/apache2/belajarvps.my.id_access.log combined
</VirtualHost>
Tekan tombol CTRL + S untuk menyimpan dan CTRL + X untuk keluar dari text editor nano
Kemudian masukkan perintah berikut di terminal:
sudo a2ensite belajarvps.my.id;
sudo systemctl restart apache2
FTP
Install VSFTPDsudo apt install vsftpd
Backup Settingan Original
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.original
Supaya user bisa login ke root folder per akun website saja:
sudo usermod -d /var/www/belajarvps.my.id/ -m ftpbelajarvps
Setting VSFTPD
sudo nano /etc/vsftpd.conf
Atur/Edit:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
Tambah:
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
user_sub_token=$USER
allow_writeable_chroot=YES
Tambahkan User ke Daftar User VSFTPD
echo "ftpbelajarvps" | sudo tee -a /etc/vsftpd.userlist
Cek Status dan Restart VSFTPD
cat /etc/vsftpd.userlist
sudo systemctl restart vsftpd
FIREWALL
Instalasi, Check Status dan Aktivasi UFWsudo apt install ufw
sudo ufw status
sudo ufw enable
Membuka Port Penting
sudo ufw allow 80
sudo ufw allow 443
sudo ufw allow 40000:50000/tcp
sudo ufw allow 60000/tcp
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp
sudo ufw allow 3306
CATATAN:
- 80 adalah port http
- 443 adalah port https
- 40000:50000 adalah passive port
- 60000 adalah port pengganti port ssh (22)
- 20 dan 21 adalah port FTP dan SFTP
- 990 adalah port FTPS (FTP SSL)
- 3306 adalah mysql
PHP
Instalasi PHP 8sudo apt install php libapache2-mod-php php-mysql
Instalasi PHP 7.4 (opsional)
sudo add-apt-repository ppa:ondrej/php
sudo apt install php7.4 libapache2-mod-php7.4 php7.4-cli php7.4-common php7.4-mbstring php7.4-gd php7.4-intl php7.4-xml php7.4-mysql php7.4-zip php7.4-json
SETTING PHP
sudo nano /etc/php/8.1/apache2/php.ini
Sesuaikan:
upload_max_filesize = 10M
post_max_size = 10M
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
MARIADB
Instalasi MariaDBsudo apt install mariadb-server mariadb-client
sudo mysql_secure_installation
Buat Database
sudo mysql
CREATE DATABASE belajarvps_db;
Buat User MySQL Baru
Jika ingin 1 user dapat mengakses semua database, maka:
CREATE USER 'belajarvps_user' IDENTIFIED BY ‘password';
GRANT ALL PRIVILEGES ON *.* TO 'belajarvps_user';
Tapi, jika ingin 1 user di 1 database saja:
CREATE USER 'belajarvps_single_user'@'%' IDENTIFIED BY 'password';
GRANT ALL ON belajarvpssingle_db.* TO 'belajarvps_single_user'@'%';
FLUSH PRIVILEGES;
Jika ingin menghapus user:
DROP USER ‘namauser’@’host’;
Cek Status User dan Host
select user, host from mysql.user;
Cara Remote Database via Third Party Apps (Dbeaver, HeidiSQL, dll)
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
Ganti nilai: Bind-address dari 127.0.0.1 menjadi 0.0.0.0
sudo systemctl restart mariadb
SSL
Install SSL dengan Let’s Encryptsudo apt install certbot python3-certbot-apache
Pasang SSL ke Domain
sudo certbot --apache -d belajarvps.my.id -d www.belajarvps.my.id
Belajarvps.my.id merupakan nama domain tujuan, jika subdomain maka:
sudo certbot --nginx -d subdomain.belajarvps.my.id
Semoga bermanfaat.
Bagikan ke Yang Lain
Diskusi
Belum ada pertanyaan pada artikel ini
Tulis Pertanyaan
Ada pertanyaan? Silahkan tulis pada form dibawah ini
Silahkan login dahulu untuk dapat berkomentar, klik disini.Artikel yang Lain
Cara Download dan Integrasi Slider ke dalam Project…
Slider merupakan salah satu komponen yang dapat disertakan dalam sebuah website, baik itu sebagai…
SelengkapnyaCara Mengoptimalkan Kecepatan Loading Website Wordpress
Mengoptimalkan kecepatan website WordPress adalah salah satu cara untuk meningkatkan kinerja dan kualitas…
SelengkapnyaLibreOffice Versi ke-7 Telah Hadir dengan Dukungan…
LibreOffice merupakan salah satu alternatif dari aplikasi office gratis yang tersedia dari The Document…
SelengkapnyaCara Membuat Fitur Backup Database di Codeigniter…
Codeigniter adalah salah satu framework php yang ringan dan cepat juga telah memberikan berbagai…
SelengkapnyaCara Upload Project Codeigniter ke Server Shared Hosting
Dalam pembuatan suatu aplikasi web, seseorang biasanya dihadapkan dengan 2 pilihan yaitu kerjakan…
SelengkapnyaCara Mengganti Default Format Save File di Libre Office…
Pada artikel sebelumnya, saya sudah membagikan cara install aplikasi libre office di Linux. Nah kali…
Selengkapnya