Ing artikel iki, kita bakal nuduhake konfigurasi 3proxy ing server khusus sing didhukung dening sistem operasi ArchLinux/CentOS. 3proxy minangka salah sawijining alat sing paling relevan lan fungsional. Ndhukung macem-macem jinis protokol: HTTP, HTTPS, FTP, SOCKS, lan liya-liyane. Iku bakal mbantu nyiyapake server proxy dhewe ing sawetara menit.
Artikel kasebut ngemot pandhuan langkah-langkah babagan instalasi sarana lan konfigurasi luwih lanjut. Masalah kayata instalasi saka sumber resmi, nyiyapake file konfigurasi, mbukak port non-standar dianggep, uga kesalahan umum diterangake lan rekomendasi praktis kanggo ngatasi masalah kasebut. Sadurunge diluncurake, sampeyan kudu pesen a VPS or server darmabakti didhukung dening sistem operasi CentOS utawa ArchLinux. Kabeh tumindak ing conto bakal dileksanakake ing server darmabakti powered by sistem operasi CentOS7 karo siji alamat IP umum statis darmabakti.
instalasi
langkah 1
3proxy diinstal langsung saka sumber. gcc bakal digunakake minangka compiler. Kita nyambung menyang server minangka root (superuser) lan nginstal compiler.
yum install gcc
langkah 2
Saiki sampeyan kudu ndownload file sumber 3proxy. Sampeyan bisa nindakake iki kanthi pindhah menyang situs resmi lan nyalin link menyang versi saiki:
Yen versi arsip dibutuhake, sampeyan uga bisa ngundhuh link langsung saka GitHub:
Nalika nulis artikel iki, versi saiki yaiku 0.9.3. Unduh lan langsung unpack:
wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz
langkah 3
Pindhah menyang direktori karo proyek sing ora dibungkus lan kompilasi:
cd 3proxy-0.9.3/
make -f Makefile.Linux
langkah 4
Kita nggawe direktori lan nyalin file 3proxy menyang / usr / bin:
mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/
langkah 5
Kita nggawe pangguna kanggo nggarap katalog. Ing kasus iki jeneng panganggo iku 3 panganggo proxy:
useradd -s /usr/sbin/nologin -U -M -r 3proxyuser
Kita menehi hak kanggo nggarap direktori kanggo pangguna sing digawe:
chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy
Saiki ayo nggawe file konfigurasi nggunakake printah:
touch /etc/3proxy/3proxy.cfg
Yen perlu, sampeyan bisa nyetel ijin ing file konfigurasi kanggo pangguna root. Langkah iki ora wajib, nanging bakal nambah proteksi:
chmod 600 /etc/3proxy/3proxy.cfg
3 konfigurasi proxy
langkah 6
Sampeyan kudu ngisi file konfigurasi sing digawe sadurunge. Pisanan, goleki uid lan gid pangguna kanthi prentah:
id 3proxyuser
Ing kasus kita, iki minangka nilai ing ngisor iki:
Kanggo ngisi file konfigurasi, sampeyan bisa njupuk konfigurasi siap-digawe utawa nggunakake dokumentasi ing situs web resmi. Uga file kanthi conto wis diinstal kanthi gawan; sampeyan bisa nemokake ing dalan: /cfg/3proxy.cfg.sample
Minangka conto, kita bakal nimbang 2 jinis konfigurasi: kanthi lan tanpa logging. Saben baris bakal diiringi komentar (padha ditandhani karo "#" simbol).
Iki minangka conto konfigurasi sing wis siap tanpa logging:
# We specify the user's data that we found out in the previous command
setgid 995
setuid 997
# Type the NS-servers. It is possible to clarify your own servers at /etc/resolv.conf
nserver 1.1.1.1
nserver 8.8.8.8
# Cache size
nscache 65536
# Timeouts
timeouts 1 5 30 60 180 1800 15 60
# Authorization of users by login/password (if required). You may not to use it or specify the path to the file in which authorization data is stored, for example, users $/etc/3proxy/.authfile
# If you insert a password in md5 format, replace “CL” with “CR”, as indicated in the example. You can use 2 methods at the same time.
auth cache strong
users "userproxy:CL:passwordproxy"
users "userproxy2:CR:b89097a7ad0b94f13b3c313ae76699d4 "
# Launch mode. Daemon only.
Daemon
# We write the port through which the http connection will take place. The example shows the standard one. To establish a socks connection, use the command specified in the second line, the port is also standard.
proxy -p3128
socks -p1080
Kita nimbang pilihan saka file konfigurasi tanpa logging. Saiki kita bakal nggawe file konfigurasi karo logging lan wewenang pangguna; iku bakal digunakake mengko sak persiyapan server.
Priksa manawa sampeyan menehi informasi wewenang, amarga server bisa dideteksi sanajan ing port non-standar.
# Configuring the server to launch from the userproxy user and the passwordproxy password.
users userproxy:CL:passwordproxy
# Specify the user's uid and gid
setgid 995
setuid 997
# Nameservers (NS-servers)
nserver 1.1.1.1
nserver 8.8.8.8
# Timeouts
timeouts 1 5 30 60 180 1800 15 60
# Cache size (standard)
nscache 65536
# Indicate the launch mode
daemon
# We install http proxy on a non-standard 50001 port. If there are several IP addresses on the server, be sure to specify a specific address for connecting the network. For example, "-e91.150.32.146". The argument "i" is a local address.
proxy –p50001
# In a same way as socks proxy, we conduct the installation on a 50002 port.
socks –p50002
# Path to the directory with logs, logs format and proxy rotation
Log /var/log/3proxy/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30
Iki ngrampungake persiyapan file konfigurasi utama. Kita pindhah menyang tahap pungkasan lan miwiti.
langkah 7
Nggawe file initialization kanggo systemd:
touch /etc/systemd/system/3proxy.service
Nerbitake hak sing dibutuhake:
chmod 664 /etc/systemd/system/3proxy.service
Salin lan tempel nilai ing ngisor iki menyang file lan simpen:
[Unit]
Description=3proxy Proxy Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg
ExecStop=/bin/kill `/usr/bin/pgrep 3proxyuser`
RemainAfterExit=yes
Restart=on-failure
[Install]
WantedBy=multi-user.target»
Tulung dicathet: ing nilai "ExecStop" sampeyan kudu nemtokake jeneng pangguna sing digawe ing langkah No. 5.
Sawise sampeyan kudu nganyari konfigurasi Daemon kanthi printah:
systemctl daemon-reload
langkah 8
Siji-sijine sing dibutuhake yaiku miwiti 3proxy sing dikonfigurasi, ditambahake menyang autostart, lan uga mbukak port ing firewall.
Tambah menyang autostart, bukak lan mriksa status:
systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy
Sawise mriksa status kasebut, kita ndeleng informasi manawa 3proxy wis sukses diluncurake:
Siji-sijine sing isih ana yaiku mbukak port:
firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload
Yen perlu, urip maneh server. Sampeyan bisa mriksa apa port mbukak kanthi printah:
firewall-cmd --list-all
Apa sing kudu:
Kaya sing kita deleng, loro port kasebut wis sukses dibukak lan dirungokake. sambungan http ing port pisanan, kaos kaki ing port kapindho.
Priksa sambungan liwat layanan sing trep:
Kabeh mlaku. Kanggo bagean kita, kita ora nyaranake nggunakake sambungan ora aman tanpa wewenang login/sandi, uga karo set standar port. Nalika nyetel file konfigurasi, manawa kanggo nemtokake login lan nggawe sandhi Komplek, lan uga ngganti bandar kanggo non-standar. Ing kasus sing luar biasa, sampeyan bisa nggunakake wewenang alamat IP
Masalah umum
Ana sing salah lan proxy ora bisa digunakake? Mbok konfigurasi 3proxy wis rampung salah. Ayo nimbang masalah sing paling umum lan solusi nalika nginstal lan ngatur sarana.
Ora ana sambungan
Masalah sing paling umum kanggo akeh pangguna yaiku sambungan sing ora bisa diakses nalika file konfigurasi katon dikonfigurasi kanthi bener. Yen sampeyan yakin manawa kabeh setelan wis dikonfigurasi kanthi bener, panyedhiya hosting ora mbatesi port sing dipilih lan kabeh data nuduhake layanan sing bisa digunakake, masalah kasebut bisa uga ana ing Firewall, utawa, luwih tepat, konfigurasi sing salah. Contone, bisa uga ana luwih saka rong program sing diinstal ing sistem sing bakal konflik karo saben liyane. Kanggo ngatasi masalah, cukup nggunakake siji Firewall tartamtu. Disaranake sampeyan milih mung iptables utawa firewall-cmd.
Layanan ora diluncurake
Layanan ora diwiwiti sawise nyetel kabeh file konfigurasi sing dibutuhake. Iki kedadeyan nalika langkah konfigurasi ora kejawab, hak sing cocog ora diwenehake, utawa ana kesalahan cilik ing file konfigurasi. Disaranake sampeyan sinau kanthi teliti instruksi langkah demi langkah maneh, mbok menawa sampeyan ora kejawab salah sawijining langkah. Yen ora ana sing mbantu, luwih becik nginstal maneh OS lan tindakake kabeh langkah saka wiwitan. Disaranake nggunakake konteks dumunung ing /cfg/3proxy.cfg.sample, minangka konfigurasi test, lan sing wis diinstal firewall-cmd minangka firewall.
Logging
Masalah pungkasan, nanging ora kurang penting, ana hubungane karo panyimpenan file. 3proxy njupuk sawetara mb sak instalasi, nanging ukuran bisa tambah Ngartekno mung liwat logging karo liwat wektu. Kasunyatane manawa akeh pangguna ngaktifake rekaman log ing file sing kapisah, nanging ora nyetel rotasi lan ora mbusak log sing ora relevan. Telung opsi bisa digunakake kanggo solusi masalah iki:
- Aktifake logging;
- Mbusak log sing ora ana gandhengane kanthi periodik;
- Aktifake rotasi, kaya sing wis rampung ing konfigurasi ing ndhuwur. Contone, "rotate 30" ing file konfigurasi tegese 3proxy mung bakal nyimpen 30 file paling anyar.
kesimpulan
Nginstal lan ngatur 3proxy ing sistem operasi CentOS lan ArchLinux minangka tugas sing cukup prasaja, nanging ing wektu sing padha efektif. Artikel kasebut nyakup langkah-langkah kanggo nginstal paket sing dibutuhake, ngatur file konfigurasi, lan miwiti layanan kasebut. Kawruh sing dipikolehi bakal ngidini sampeyan nginstal lan ngatur server proxy dhewe tanpa kesulitan.