Baza znanja Preprosta navodila za delo s storitvijo Profitserver
Glavne Baza znanja 3proxy konfiguracija na CentOS/ArchLinux

3proxy konfiguracija na CentOS/ArchLinux


V tem članku bomo prikazali konfiguracijo 3proxy na namenskem strežniku, ki ga poganja operacijski sistem ArchLinux/CentOS. 3proxy je eno najbolj relevantnih in funkcionalnih orodij. Podpira različne vrste protokolov: HTTP, HTTPS, FTP, SOCKS in druge. Pomagal vam bo pri nastavitvi lastnega proxy strežnika v nekaj minutah.

Članek vsebuje podrobna navodila za namestitev pripomočka in njegovo nadaljnjo konfiguracijo. Obravnava težave, kot so namestitev iz uradnega vira, nastavitev konfiguracijskih datotek, odpiranje nestandardnih vrat, opisane pa so tudi pogoste napake in podana praktična priporočila za njihovo reševanje. Pred zagonom morate naročiti VPS ali namenski strežnik, ki ga poganja operacijski sistem CentOS ali ArchLinux. Vsa dejanja v primeru bodo izvedena na namenskem strežniku, ki ga poganja operacijski sistem CentOS7 z enim namenskim statičnim javnim IP-naslovom.

namestitev

korak 1

3proxy se namesti neposredno iz izvorne kode. Kot prevajalnik bo uporabljen gcc . S strežnikom se povežemo kot root (superuporabnik) in namestimo prevajalnik.

yum install gcc

korak 2

Zdaj je treba prenesti izvorne datoteke 3proxy. To lahko storite tako, da obiščete uradno spletno stran in kopirate povezavo do trenutne različice:

Namestitev pripomočka

Če potrebujete arhivirano različico, lahko povezavo prenesete tudi neposredno z GitHuba :

Namestitev 3proxy iz Githuba

V času pisanja tega članka je trenutna različica 0.9.3. Prenesite ga in takoj razpakirajte:

wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz

korak 3

Pojdite v imenik z nepakiranim projektom in prevedite:

cd 3proxy-0.9.3/
make -f Makefile.Linux

korak 4

Ustvarimo imenike in kopiramo datoteko 3proxy v /usr/bin:

mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/

korak 5

Ustvarimo uporabnika za delo s katalogom. V tem primeru je uporabniško ime 3proxyuser:

useradd -s /usr/sbin/nologin -U -M -r 3proxyuser

Ustvarjenemu uporabniku podelimo pravice za delo z imeniki:

chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy

Sedaj pa ustvarimo konfiguracijsko datoteko z ukazom:

touch /etc/3proxy/3proxy.cfg

Po potrebi lahko nastavite dovoljenja za konfiguracijsko datoteko za uporabnika root. Ta korak ni obvezen, vendar bo dodal zaščito:

chmod 600 /etc/3proxy/3proxy.cfg

3 konfiguracija proxyja

korak 6

Potrebno je pravilno izpolniti konfiguracijsko datoteko, ki je bila ustvarjena prej. Najprej poiščite uid in gid uporabnika z ukazom:

id 3proxyuser

V našem primeru so to naslednje vrednosti:

uid in gid

Za izpolnjevanje konfiguracijske datoteke lahko uporabite že pripravljene konfiguracije ali dokumentacijo na uradni spletni strani. Datoteka s primerom je privzeto že nameščena; najdete jo na poti: /cfg/3proxy.cfg.sample

Kot primer bomo obravnavali dve vrsti konfiguracije: z beleženjem in brez njega . Vsako vrstico bodo spremljali komentarji (označeni so s simbolom »#«).

To je primer že pripravljene konfiguracije brez beleženja :

# 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

Razmislili smo o možnosti konfiguracijske datoteke brez beleženja. Zdaj bomo ustvarili konfiguracijsko datoteko z beleženjem in avtorizacijo uporabnikov ; uporabljena bo kasneje med nastavitvijo strežnika.

Prepričajte se, da ste navedli podatke za avtorizacijo, saj je strežnik mogoče zaznati tudi na nestandardnih vratih.

# 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

S tem je nastavitev glavne konfiguracijske datoteke končana. Preidemo na zadnjo stopnjo in začetek.

korak 7

Ustvarite inicializacijsko datoteko za systemd:

touch /etc/systemd/system/3proxy.service

Izdajte potrebne pravice:

chmod 664 /etc/systemd/system/3proxy.service

Kopirajte in prilepite naslednje vrednosti v datoteko in shranite:

[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»

Opomba: v vrednosti »ExecStop« morate navesti uporabniško ime, ki je bilo ustvarjeno v koraku št. 5.

Po tem morate posodobiti konfiguracijo Daemon z ukazom:

systemctl daemon-reload

korak 8

Vse kar potrebujemo je, da zaženemo konfiguriran 3proxy, ga dodamo v samodejni zagon in odpremo tudi vrata v požarnem zidu.

Dodajte ga v samodejni zagon, zagon in preverjanje stanja:

systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy

Po preverjanju statusa vidimo informacijo, da je bil 3proxy uspešno zagnan:

Proxy se izvaja

Edina stvar, ki ostane, je odpreti vrata:

firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload

Po potrebi znova zaženite strežnik. Ali so vrata odprta, lahko preverite z ukazom:

firewall-cmd --list-all

Kaj bi moralo biti:

Odprite vrata požarnega zidu

Kot lahko vidimo, sta se oba pristanišča uspešno odprla in se poslušata. http povezava je na prvih vratih, socks na drugih vratih.

Preverite povezavo prek katere koli priročne storitve:

Uspešna nastavitev 3proxyja

Vse deluje. Z naše strani ne priporočamo uporabe nezaščitene povezave brez avtorizacije z uporabniškim imenom/geslom, kot tudi s standardnim naborom vrat . Med nastavitvijo konfiguracijske datoteke ne pozabite določiti uporabniškega imena in ustvariti zapletenega gesla ter spremeniti vrata v nestandardna . V izjemnih primerih je mogoče uporabiti avtorizacijo z naslovom IP.

Pogosti problemi

Je šlo kaj narobe in proxy ne deluje? Morda je bila konfiguracija 3proxy izvedena nepravilno. Razmislimo o najpogostejših težavah in njihovih rešitvah med namestitvijo in konfiguracijo pripomočka.

Ni povezave

Najpogostejša težava mnogih uporabnikov je nedostopna povezava, ko se zdi, da so konfiguracijske datoteke pravilno konfigurirane. Če ste prepričani, da so vse nastavitve pravilno konfigurirane, ponudnik gostovanja ne omejuje izbranih vrat in vsi podatki kažejo na delujočo storitev, je težava morda v požarnem zidu, natančneje v njegovi napačni konfiguraciji. Na primer, v sistemu sta lahko nameščena več kot dva programa, ki bosta med seboj v nasprotju. Za rešitev težave je dovolj, da uporabite en poseben požarni zid. Svetujemo vam, da izberete samo iptables ali firewall-cmd.

Storitev se ne zažene

Storitev se ne zažene po nastavitvi vseh potrebnih konfiguracijskih datotek. Do tega pride, če je izpuščen korak konfiguracije, če niso dodeljene ustrezne pravice ali če je v konfiguracijskih datotekah storjena manjša napaka. Priporočamo, da še enkrat natančno preučite navodila korak za korakom, saj ste morda katerega od korakov izpustili. Če nič ne pomaga, je dobro, da znova namestite operacijski sistem in sledite vsem korakom od začetka. Priporočamo, da kot testno konfiguracijo uporabite vzorec , ki se nahaja na /cfg/3proxy.cfg.sample, in kot požarni zid predhodno nameščen firewall-cmd .

Beleženje

Zadnja, a nič manj pomembna zadeva se nanaša na shranjevanje datotek. 3proxy med namestitvijo zavzame nekaj mb, vendar se lahko velikost sčasoma znatno poveča le z beleženjem. Dejstvo je, da mnogi uporabniki omogočijo zapis dnevnika v ločeno datoteko, ne nastavijo pa rotacije in ne brišejo nepomembnih dnevnikov. Za rešitev tega problema lahko uporabite tri možnosti:

  1. Omogoči beleženje;
  2. Občasno izbrišite nepomembne dnevnike;
  3. Omogoči vrtenje, kot je bilo storjeno v zgornji konfiguraciji. Na primer, "rotiraj 30" v konfiguracijski datoteki pomeni, da bo 3proxy shranil samo zadnjih 30 datotek.

zaključek

Namestitev in konfiguracija 3proxy na operacijskih sistemih CentOS in ArchLinux je dokaj preprosta, a hkrati učinkovita naloga. Članek je zajemal korake za namestitev potrebnih paketov, konfiguracijo konfiguracijskih datotek in zagon storitve. Pridobljeno znanje vam bo omogočilo, da sami brez težav namestite in konfigurirate svoj proxy strežnik.

❮ Prejšnji članek Kako ponastaviti geslo za Windows
Naslednji članek ❯ Kako povečati particijo diska v operacijskem sistemu Windows

Vprašajte nas o VPS

Vedno smo pripravljeni odgovoriti na vaša vprašanja kadarkoli podnevi ali ponoči.