Selamat datang di AutoScript. Proyek ini adalah kumpulan skrip otomatisasi yang dirancang untuk menyederhanakan instalasi, konfigurasi, dan pengelolaan layanan Xray (termasuk Vmess, Vless, dan Trojan) di server Linux. Dilengkapi dengan Web API untuk manajemen terprogram, sistem pemantauan kuota otomatis, dan notifikasi Telegram, proyek ini bertujuan untuk menyediakan solusi manajemen server Xray yang tangguh dan mudah digunakan. Proyek ini bersifat open-source. Kami menyambut baik kontribusi, fork, dan pull request dari komunitas.
- Instalasi Otomatis: Skrip instalasi tunggal untuk menyiapkan Xray, Nginx, sertifikat SSL (via Certbot), dan semua dependensi yang diperlukan.
- Manajemen Pengguna: Fungsionalitas untuk menambah, menghapus, dan memantau pengguna untuk layanan Vmess, Vless, dan Trojan.
- Manajemen Kuota: Secara otomatis memantau penggunaan data pengguna dan menonaktifkan akun yang telah melampaui kuota yang ditentukan.
- Web API: Menyediakan antarmuka API RESTful yang aman (menggunakan otorisasi Bearer Token) untuk mengelola pengguna dan kuota dari jarak jauh.
- Notifikasi Telegram: Mengirimkan notifikasi otomatis ke obrolan Telegram yang Anda tentukan saat akun dibuat, dihapus, atau kuota habis.
- Menu Interaktif: Skrip menu berbasis terminal yang mudah digunakan untuk mengelola domain, sertifikat SSL, kredensial API, dan pengaturan Telegram.
- Pencadangan & Pemulihan: Skrip bawaan untuk mencadangkan dan memulihkan direktori konfigurasi Xray Anda.
Untuk melakukan instalasi penuh dari AutoScript Xray Panel, cukup jalankan perintah berikut sebagai pengguna root di server Anda:
apt update ; apt install wget curl binutils openssl -y ; bash <(curl -Lks https://raw.githubusercontent.com/farelvpn/autoscript/refs/heads/main/install.sh)
Skrip instalasi akan memandu Anda melalui langkah-langkah berikut:
- Memperbarui sistem dan menginstal paket yang diperlukan (seperti curl, nginx, python3, certbot).
- Meminta Anda untuk memasukkan nama domain untuk server Anda.
- Menginstal Xray-core dan Nginx.
- Secara otomatis mendapatkan sertifikat SSL/TLS untuk domain Anda menggunakan Certbot.
- Mengkonfigurasi Xray dan Nginx untuk bekerja bersama sebagai reverse proxy.
- Menyalin semua skrip manajemen (API, kuota, menu) ke direktori yang sesuai (seperti /usr/local/sbin/ dan /usr/local/sbin/api/).
- Menyiapkan dan memulai layanan systemd untuk menjalankan Web API dan skrip pemantauan kuota secara terus-menerus.
/etc/xray/: Direktori konfigurasi utama.config.json: File konfigurasi inti Xray.domain: Menyimpan nama domain server Anda saat ini.bot.key, client.id: Menyimpan kredensial untuk notifikasi Telegram.
database/: Menyimpan file database sederhana untuk setiap pengguna.limit/quota/: Menyimpan batas kuota untuk setiap pengguna.usage/quota/: Menyimpan penggunaan kuota saat ini untuk setiap pengguna.
/etc/api/key: Menyimpan token Bearer yang valid untuk mengakses Web API./usr/local/sbin/api/: Berisi skrip Python yang dieksekusi oleh Web API (misalnya, add-trojan, delete-vmess)./usr/local/sbin/: Berisi skrip utilitas dan menu (misalnya, menu-api, quota-trojan, backup)./etc/systemd/system/: Berisi file layanan systemd (misalnya, server.service, quota-trojan.service).
Anda dapat dengan mudah mengelola server Anda menggunakan skrip menu interaktif:
- Mengelola Domain & SSL:
menu-domainGunakan menu ini untuk mengubah nama domain server Anda atau memperbarui sertifikat SSL Anda secara manual.
- Mengelola Web API:
menu-api- Mengelola Notifikasi Telegram:
telegram-infoMengubah Versi Xray:
versi-xrayProyek ini dilengkapi dengan skrip sederhana untuk pencadangan dan pemulihan.
- Membuat Cadangan: Skrip
backupsecara otomatis membuat arsip.zipdari direktori/etc/xrayAnda dan mengirimkannya ke obrolan Telegram Anda. Ini diatur untuk berjalan secara otomatis melalui crontab.
Memulihkan Cadangan:
- Unduh file
backup-YYYY-MM-DD_HH-MM-SS.zipterbaru dari obrolan Telegram Anda dan unggah ke direktori/rootdi server Anda. - Jalankan perintah berikut:
restoreSkrip akan secara otomatis menemukan file cadangan terbaru di /root, mencadangkan konfigurasi Anda saat ini (sebagai tindakan pengamanan), dan memulihkan data dari file .zip.
Kami sangat menyambut kontribusi dari komunitas untuk membuat proyek ini lebih baik. Jika Anda ingin berkontribusi, silakan ikuti panduan berikut:
- Fork repositori ini ke akun GitHub Anda.
- Buat cabang baru (
git checkout -b fitur/nama-fitur-baru. - Lakukan perubahan Anda dan commit dengan pesan yang jelas (
git commit -m 'Menambahkan fitur X'). - Push perubahan Anda ke repositori fork Anda (
git push origin fitur/nama-fitur-baru). - Buka Pull Request ke repositori asli.
Proyek ini dilisensikan di bawah Lisensi MIT.