Skrip ini menganggap anda mempunyai akses root atau sudo.

import os
import subprocess

def run_command(command):
    """Run a system command and check for errors."""
    print(f"Running command: {' '.join(command)}")
    result = subprocess.run(command, check=True, text=True)
    if result.returncode != 0:
        print(f"Error: Command {' '.join(command)} failed with exit code {result.returncode}")
        exit(result.returncode)

def install_3proxy():
    # Update package list and install dependencies
    run_command(['sudo', 'apt-get', 'update'])
    run_command(['sudo', 'apt-get', 'install', '-y', 'build-essential', 'wget'])

    # Download and extract 3proxy
    run_command(['wget', 'https://github.com/3proxy/3proxy/archive/refs/tags/0.9.3.tar.gz'])
    run_command(['tar', 'xzf', '0.9.3.tar.gz'])

    # Build 3proxy
    os.chdir('3proxy-0.9.3')
    run_command(['make', '-f', 'Makefile.Linux'])

    # Create necessary directories and copy files
    run_command(['sudo', 'mkdir', '-p', '/usr/local/3proxy/bin'])
    run_command(['sudo', 'mkdir', '-p', '/usr/local/3proxy/logs'])
    run_command(['sudo', 'mkdir', '-p', '/usr/local/3proxy/conf'])
    run_command(['sudo', 'cp', 'src/3proxy', '/usr/local/3proxy/bin/'])

    # Create a sample configuration file
    config = """
daemon
maxconn 1024
nserver 8.8.8.8
nserver 8.8.4.4
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
auth none
allow *
proxy -p8080
flush
"""
    with open('/tmp/3proxy.cfg', 'w') as config_file:
        config_file.write(config)
    run_command(['sudo', 'mv', '/tmp/3proxy.cfg', '/usr/local/3proxy/conf/3proxy.cfg'])

    # Create systemd service file
    service_file = """
[Unit]
Description=3proxy Proxy Server
After=network.target

[Service]
ExecStart=/usr/local/3proxy/bin/3proxy /usr/local/3proxy/conf/3proxy.cfg
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
Type=simple

[Install]
WantedBy=multi-user.target
"""
    with open('/tmp/3proxy.service', 'w') as service:
        service.write(service_file)
    run_command(['sudo', 'mv', '/tmp/3proxy.service', '/etc/systemd/system/3proxy.service'])

    # Reload systemd, enable and start 3proxy service
    run_command(['sudo', 'systemctl', 'daemon-reload'])
    run_command(['sudo', 'systemctl', 'enable', '3proxy'])
    run_command(['sudo', 'systemctl', 'start', '3proxy'])

    print("3proxy has been installed and started successfully.")

if __name__ == '__main__':
    install_3proxy()

Arahan untuk Menjalankan Skrip:

  1. Simpan skrip ke fail, contohnya, install_3proxy.py.
  2. Pastikan skrip boleh dilaksanakan dengan berjalan chmod +x install_3proxy.py.
  3. Jalankan skrip dengan sudo python3 install_3proxy.py.

Skrip ini akan:

  • Kemas kini senarai pakej.
  • Pasang kebergantungan yang diperlukan.
  • Muat turun dan bina 3proksi.
  • Buat direktori yang diperlukan.
  • Sediakan konfigurasi asas.
  • Buat perkhidmatan systemd untuk mengurus 3proxy.
  • Dayakan dan mulakan perkhidmatan 3proksi.

Anda boleh menyesuaikan konfigurasi mengikut keperluan.

Komen (0)

Tiada ulasan di sini lagi, anda boleh menjadi yang pertama!

Tinggalkan Balasan

Alamat e-mel anda tidak akan disiarkan. Medan diperlukan ditanda dengan *


Pilih dan Beli Proksi

Proksi Pusat Data

Proksi Berputar

Proksi UDP

Dipercayai Oleh 10000+ Pelanggan Seluruh Dunia

Pelanggan Proksi
Pelanggan Proksi
Aliran Pelanggan Proksi.ai
Pelanggan Proksi
Pelanggan Proksi
Pelanggan Proksi