Menu

Cara Install, Mengonfigurasi, dan Menjalankan Trojan-GFW


Trojan-GFW dimaksudkan sebagai mekanisme yang tidak dapat diidentifikasi untuk membantu Anda melewati batasan jaringan seperti Great Firewall (GFW).

Halaman ini memberikan instruksi untuk menginstal Trojan-GFW pada server CentOS 8 dan Debian 10+. Perhatikan bahwa CentOS 8 mencapai akhir masa pakainya pada tanggal 31 Desember 2021. Oleh karena itu, Debian direkomendasikan. Debian 10 dijuluki “buster,” dan Debian 11 dijuluki “bullseye.”

1. Server

1.1. Persyaratan

Anda akan memerlukan nama domain serta server Anda. Siapkan catatan DNS yang menunjuk dari nama domain Anda ke alamat IP server Anda. Nama domain yang digunakan dalam contoh adalah example.comdengan nama host sampel www.example.com.

1.2. Buat Situs Web Kamuflase

Instal dan mulai Nginx. Di CentOS:

yum install nginx -y

systemctl enable nginx

systemctl start nginx

Di Debian atau Ubuntu:

apt install nginx -y

systemctl enable nginx

systemctl start nginx

Edit file konfigurasi situs default Nginx:

  • Di CentOS, edit /etc/nginx/nginx.conf
  • Di Debian atau Ubuntu, edit /etc/nginx/sites-available/default

Tetapkan nama server. Misalnya, dengan nama host kami dari www.example.com, kami akan mengubah baris untuk server_namemembaca:

server_name www.example.com;

Simpan file. Mulai ulang Nginx dengan konfigurasi barunya:

nginx -t

systemctl restart nginx

systemctl status nginx

Tambahkan beberapa contoh konten ke server web. Di CentOS:

yum install wget zip unzip -y

wget https://github.com/arcdetri/sample-blog/archive/master.zip

unzip master.zip

cp -rf sample-blog-master/html/* /usr/share/nginx/html/

Di Debian atau Ubuntu:

apt install zip unzip -y

wget https://github.com/arcdetri/sample-blog/archive/master.zip

unzip master.zip

cp -rf sample-blog-master/html/* /var/www/html/

Anda sekarang dapat menguji bahwa server web dasar Anda dan kontennya muncul seperti yang diharapkan di browser dengan mengunjungi http://www.example.com(tentu saja, mengganti contoh ini dengan nama host Anda yang sebenarnya).

1.3. Dapatkan Sertifikat SSL

Proyek Let’s Encrypt menawarkan sertifikat SSL gratis. Kita akan membutuhkan satu untuk Trojan.

Pada CentOS 8:

yum install epel-release -y

yum install certbot python3-certbot-nginx -y

certbot certonly --nginx

Pada versi terbaru Debian atau Ubuntu:

apt install certbot python3-certbot-nginx -y

certbot certonly --nginx

Untuk platform lain, lihat halaman EFF Certbot .

Tanggapi permintaan Certbot:

  • Masukkan alamat email Anda
  • Masuk auntuk setuju
  • Masukkan yatau nuntuk membagikan alamat email Anda
  • Pilih nomor host yang sesuai yang Anda perlukan sertifikatnya

Let’s Encrypt sertifikat SSL berlaku selama 90 hari. Siapkan semuanya untuk pembaruan otomatis setiap 90 hari. Pada CentOS 8:

echo "0 0,12 * * * root python3 -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew -q" | sudo tee -a /etc/crontab > /dev/null

Pada versi terbaru Debian atau Ubuntu:

certbot renew --dry-run

Jadikan sertifikat dan kunci Let’s Encrypt Anda dapat dibaca dan direktori Let’s Encrypt Anda dapat dieksekusi:

chmod -R +rx /etc/letsencrypt

Server web sekarang sudah siap.

1.4. Instal Trojan

Instal Trojan dari repositori. Pada CentOS 8:

yum config-manager --set-enabled PowerTools

yum install trojan -y

Di Debian 10+ atau Ubuntu 20.04+:

apt install trojan -y

Untuk platform lain, lihat wiki Trojan-GFW di GitHub .

1.5. Buat Layanan SystemD

Membuat file layanan systemd di /etc/systemd/system/trojan.service.

[Unit]
Description=trojan
Documentation=man:trojan(1) https://trojan-gfw.github.io/trojan/config https://trojan-gfw.github.io/trojan/
After=network.target network-online.target nss-lookup.target mysql.service mariadb.service mysqld.service

[Service]
Type=simple
StandardError=journal
User=nobody
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/usr/bin/trojan /etc/trojan/config.json
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=1s

[Install]
WantedBy=multi-user.target

Simpan file layanan systemd.

1.6. Konfigurasikan Trojan

Konfigurasikan Trojan dengan mengedit file konfigurasi /etc/trojan/config.json. Ganti nilai template dengan nilai Anda yang sebenarnya:

  • Masukkan nilai Anda sendiri untuk password1dan hapus tanda koma.
  • Hapus baris untuk password2
  • Sertifikat Anda ada di /etc/letsencrypt/live/www.example.com/fullchain.pem, jadi tentukan itu di certtelepon.
  • Kunci Anda ada di /etc/letsencrypt/live/www.example.com/privkey.pem, jadi tentukan itu di keytelepon.

Simpan file /etc/trojan/config.json.

1.7. Konfigurasikan Trojan

Buat Trojan mulai setelah setiap reboot, dan mulai sekarang:

systemctl enable trojan

systemctl start trojan

Periksa apakah Trojan mendengarkan di port 443, sementara Nginx mendengarkan di port 80:

ss -tulpn

5 1 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments