بِسْــــــــــــــــــمِ-اﷲِالرَّحْمَنِ-اارَّحِيم | الحمدُ لله
A. Mengaktifkan Windows Subsystem for Linux pada Windows Features
Centang pada bagian
- Virtual Machine Platform
- Windows Hypervisor Platform
- Windows Subsystem for Linux
atau menggunakan perintah Powershell
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -AllB. Menginstall Distro Linux Ubuntu
buka command prompt dengan perintah :
wsl --install Ubuntu --web-download
- memasukan username
- mensetting password
Beberapa distro linux WSL yang tersedia di Microsoft Stores :
- Kali-Linux
- Debian
- Ubuntu
- Alma Linux
- Fedora
- Arch
- OpenSUSE
atau bisa mengecek daftar WSL untuk menginstall nya melalui command prompt
wsl --list --onlineSetelah semua instalasi selesai, WSL masih menggunakan ip virtual berikut ini langkah untuk menjadikan mode Bridge dan Server bisa diakses melalui Local Network.
Cek IP WSL
wsl hostname -ICek WSL status
wsl --statusList WSL
wsl -l -vStart WSL
wsl -d <distro_name>Shutdown WSL
wsl --shutdown
Membuat File .wslconfig pada User Profile C:\Users\<user>\.wslconfig
atau buka run %USERPROFILE%\.wslconfig
isi script berikut ini kemudian save file
[wsl2]
networkingMode = bridged
vmSwitch = Bridge
Membuat New Virtual Switch dengan nama Bridge di powershell dengan perintah :
New-VMSwitch -SwitchName Bridge -SwitchType Internal2. pada Start Menu cari kemudian Buka Hyper-V Manager
3. Buka Virtual Switch Manager pada tab Actions
4. pada Virtual Switches di Bridge lakukan perubahan Connection Type menjadi External Network pilih adapter fisik sesuai dengan LAN atau Wifi dan kemudian Apply
5. Cek kembali IP WSL sekarang sudah berubah menjadi satu segmen dengan jaringan lokal.
C. Membuat Web Server pada WSLPertama Lakukan Update
sudo apt update -y2. Lakukan Upgrade juga
sudo apt ugrade -y3. Menginstall net-tools
sudo apt install net-tools4. Menginstall PHP
sudo apt install php5. Menginstal Apache sebagai Web Server
sudo apt install apache2jalankan service apache
sudo service apache2 start
membuat symlink dari /var/www/html ke /home/adyoi/, disini saya menggunakan adyoi sebagai username
ln -s /var/www/html /home/adyoi/
masuk ke directory html
cd html
buat script sederhana yang menampilkan php info dengan perintah :
nano info.phpisi script berikut kemudian save file, Ctrl-O dan keluar Ctrl+X
<?php
echo phpinfo();
?>
6. Menginstal Databasesudo apt install mariadb-server
masuk root dengan perintah :
sudo sujalankan service mariadb dengan perintah :
service mariadb startlakukan mysql_secure_installation dengan perintah :
mysql_secure_installationmasuk kedalam mysql dengan perintah :
mysql -uroot -pmembuat user admin
CREATE USER 'admin'@'%' IDENTIFIED BY 'Password@2023';lakukan privilege pada user admin
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;lakukan flush privilege kemudian exit
FLUSH PRIVILEGES;agar dapat diremote, tambahkan baris script berikut pada /etc/mysql/my.cnf
exit;
[mysqld]lakukan restart pada mariadb-serverservice mariadb restart
bind-address = 0.0.0.0
7. Menginstal phpmyadmin
apt install phpmyadminlakukan restart pada web server
service apache2 restart
8. Menginstal SFTP
apt install openssh-serverjalankan service ssh
service ssh startmembuat password user, disini saya menggunakan adyoi sebagai username
passwd adyoi
Selesai sudah seluruh langkah menjadikan Windows Subsystem for Linux (WSL) sebagai mode bridge dan Web Server dapat diakses melalui Local Network, ikuti langkah demi langkah nya agar dapat dipahami secara detail, jika ada pertanyaan silahkan tulis dikolom komentar 😐
Karena Server ip ini bersifat dhcp maka akan berubah-ubah sesuai dengan dhcp pada modem router, untuk memudahkan configuration pada saat WSL Running maka diperlukan script starter sebagai berikut, anda juga bisa kustom ip address untuk Server.
Mengaktifkan systemd terlebih dahulu
nano /etc/wsl.conf
isi script berikut, Ctrl+O kemudian Ctrl+X
[boot]buka command prompt untuk melakukan reboot WSL
systemd=true
wsl --shutdownbuat file baru dengan perintah :
wsl -d Ubuntu
nano start_server.shisi script start_server.sh berikut, kemudian Ctrl+O dan Ctrl+X untuk keluar
#!/bin/shubah permission script
# WSL to Local Server
# oleh @adyoi - Tangsel 1/7/2023
if [ "$(id -u)" -ne 0 ]; then
echo "sudo ./start_server.sh"
exit 1
fi
clr=$(tput sgr0)
cyan=$(tput setaf 6)
green=$(tput setaf 2)
yellow=$(tput setaf 3)
magenta=$(tput setaf 5)
echo "${yellow}---> [ Start Server ] <---${clr}"
read -p "IP Address: " ip_address
read -p "IP Gateway: " gateway_address
netplan_config_file="/etc/netplan/01-netcfg.yaml"
echo "network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses:
- $ip_address/24
routes:
- to: 0.0.0.0/0
via: $gateway_address" | sudo tee $netplan_config_file > /dev/null
echo "${cyan}---> [ Configuration Networking ] <---${clr}"
sudo netplan apply
echo "${magenta}---> [ Start Services ] <---${clr}"
sudo systemctl restart apache2
sudo systemctl restart mariadb
sudo systemctl restart ssh
echo "${green}---> [ Server Running ] <---${clr}"
echo "--------------------------"
echo "IP Server: ${yellow}http://$(hostname -I | awk '{print $1}')${clr}"
echo "--------------------------"
chmod +x start_server.shjalankan script start_server.sh
sudo ./start_server.sh
Sekarang Web Server berjalan di IP 192.168.1.123
Sekian dan Selamat Mencoba 🙏
Comments
Post a Comment
Silahkan Komentar dengan bijak