sing-box adalah kumpulan alat untuk membangun proksi, yang berfungsi untuk membuka akses yang diblokir, menjaga privasi, dan meningkatkan keamanan jaringan.
sing-box mendukung beberapa protokol proksi, antara lain Vmess, Trojan, Shadowsocks, Hysteria, dsb.
Pada tutorial ini, aku akan membahas cara menginstal Server Trojan WebSocket TLS menggunakan sing-box pada sistem operasi Debian dan turunannya.
Persiapan
Berikut beberapa hal yang perlu kalian siapkan sebelum lanjut ke proses instalasi.
- VPS Linux
- Domain
Instalasi
Langkah pertama, instal gcc, git, dan curl dengan apt
.
$ sudo apt update
$ sudo apt install git curl build-essential -y
Kemudian unduh repositori sing-box menggunakan Git.
$ git clone https://github.com/SagerNet/sing-box
Ganti ke direktori sing-box.
$ cd sing-box
Setelah itu, instal go compiler.
$ ./release/local/install_go.sh
Langkah terakhir, instal sing-box.
$ ./release/local/install.sh
Setelah instalasi rampung, langkah selanjutnya adalah menyetel konfigurasi sing-box.
Konfigurasi server
Sebelum lanjut ke tahap selanjutnya, pastikan kalian sudah mengarahkan alamat IP publik VPS ke domain kalian, karena pada tutorial ini menggunakan ACME untuk membuat sertifikat TLS.
Jika kalian menggunakan Cloudflare, buka setelan DNS, tambahkan record baru, kemudian konfigurasikan seperti pada gambar berikut.
Setelah DNS dikonfigurasi, edit file konfigurasi sing-box yang terletak di /usr/local/etc/sing-box/config.json
dengan teks editor kesayangan kalian.
Pada tutorial ini, aku menggunakan teks editor nano untuk mengedit file konfigurasi.
$ nano /usr/local/etc/sing-box/config.json
Kemudian ganti dengan konfigurasi berikut.
{
"log": {
"level": "info",
"timestamp": true
},
"inbounds": [
{
"type": "trojan",
"tag": "trojan-ws-in",
"listen": "::",
"listen_port": 443,
"users": [
{
"name": "aditya",
"password": "8JCsPssfgS8tiRwiMlhARg=="
}
],
"tls": {
"enabled": true,
"acme": {
"domain": "domain_kalian.com",
"email": "[email protected]"
}
},
"transport": {
"type": "ws",
"path": "/trojan"
}
}
],
"outbounds": [
{
"type": "direct",
"tag": "direct"
}
]
}
Jangan lupa untuk mengganti email
, password
, dan domain
pada konfigurasi di atas.
Kemudian simpan file konfigurasi tersebut. Jika kalian menggunakan teks editor nano, tekan CTRL + S
untuk menyimpan konfigurasi dan tekan CTRL + X
untuk keluar dari teks editor nano.
Setelah dikonfigurasi, jalankan perintah berikut untuk memastikan tidak ada kesalahan pada file konfigurasi sing-box.
$ sing-box check -D /usr/local/etc/sing-box
Jika tidak ada error pada konfigurasi, hidupkan service sing-box agar berjalan secara otomatis saat boot
.
$ sudo systemctl enable sing-box
Setelah itu, mulai server Trojan WebSocket.
$ sudo systemctl start sing-box
Konfigurasi klien
Banyak klien yang sudah mendukung Trojan WebSocket, antara lain Clash, v2rayNg, Matsuri, dan sebagainya.
Jika kalian ingin menggunakan klien selain sing-box, kalian perlu menyesuaikan konfigurasinya berdasarkan dokumentasi klien masing-masing, karena ada beberapa perbedaan format konfigurasi sing-box dengan klien lain.
Berikut ini adalah contoh konfigurasi Trojan WebSocket TLS untuk klien sing-box.
{
"log": {
"level": "info",
"timestamp": true
},
"inbounds": [
{
"type": "socks",
"tag": "socks-in",
"listen": "::",
"listen_port": 1080
}
],
"outbounds": [
{
"type": "trojan",
"tag": "trojan-ws-out",
"server": "domain_kalian.com",
"server_port": 443,
"password": "8JCsPssfgS8tiRwiMlhARg==",
"tls": {
"enabled": true
},
"transport": {
"type": "ws",
"path": "/trojan"
}
},
{
"type": "direct",
"tag": "direct"
}
]
}
Perawatan
Merawat server Trojan WebSocket tidak begitu menyusahkan, kalian hanya perlu memperbarui paket secara berkala.
Untuk memperbarui paket ke versi paling baru, jalankan perintah apt
berikut.
$ apt update
$ apt upgrade -y
Dan juga, kalian perlu memperbarui sing-box.
Untuk memperbarui sing-box, ganti ke direktori repositori sing-box yang telah diunduh.
$ cd sing-box
Kemudian jalankan perintah berikut ini.
$ ./release/local/update.sh