Knowledgebase Simplaj instrukcioj por labori kun la servo Profitserver
ĉefa Knowledgebase 3proxy-agordo sur CentOS/ArchLinux

3proxy-agordo sur CentOS/ArchLinux


En ĉi tiu artikolo ni montros 3proxy-agordon sur dediĉita servilo funkciigita de la operaciumo ArchLinux/CentOS. 3proxy estas unu el la plej gravaj kaj funkciaj iloj. Ĝi subtenas diversajn specojn de protokoloj: HTTP, HTTPS, FTP, SOCKS kaj aliaj. Ĝi helpos vin agordi vian propran prokurilon en kelkaj minutoj.

La artikolo enhavas paŝon post paŝa gvido pri la instalado de la ilo kaj ĝia plia agordo. Problemoj kiel instalado el oficiala fonto, agordo de agordodosieroj, malfermo de nenormaj pordoj estas konsiderataj, kaj ankaŭ oftaj eraroj estas priskribitaj kaj praktikaj rekomendoj por solvi ilin estas donitaj. Antaŭ la lanĉo, vi devas mendi VPSdediĉitan servilon funkciigitan per la operaciumo CentOS aŭ ArchLinux. Ĉiuj agoj en la ekzemplo estos plenumitaj sur dediĉita servilo funkciigita per la operaciumo CentOS7 kun unu dediĉita statika publika IP-adreso.

instalado

paŝo 1

3proxy estas instalita rekte el la fontkodoj. gcc estos uzata kiel la kompililo. Ni konektas al la servilo kiel administranto (superuzanto) kaj instalas la kompililon.

yum install gcc

paŝo 2

Nun necesas elŝuti la fontdosierojn de 3proxy. Vi povas fari tion irante al la oficiala retejo kaj kopiante la ligilon al la aktuala versio:

Instalanta utilecon

Se arkivita versio estas bezonata, vi ankaŭ povas elŝuti la ligilon rekte de GitHub :

Instalante 3-proxy de Github

En la momento de verkado de ĉi tiu artikolo, la nuna versio estas 0.9.3. Elŝutu ĝin kaj tuj malpaku ĝin:

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

paŝo 3

Iru al la dosierujo kun la malpakita projekto kaj kompilu:

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

paŝo 4

Ni kreas dosierujojn kaj kopias la 3proxy-dosieron al /usr/bin:

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

paŝo 5

Ni kreas uzanton por labori kun la katalogo. En ĉi tiu kazo la uzantonomo estas 3proxyuser:

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

Ni donas la rajtojn labori kun dosierujoj al la kreita uzanto:

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

Nun ni kreu agordan dosieron per la komando:

touch /etc/3proxy/3proxy.cfg

Se necese, vi povas agordi permesojn en la agordodosiero por la administra uzanto. Ĉi tiu paŝo ne estas deviga, sed aldonos protekton:

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

3 prokura agordo

paŝo 6

Necesas ĝuste plenigi la agordan dosieron, kiu estis kreita antaŭe. Unue, malkovru la uid kaj gid de la uzanto per la komando:

id 3proxyuser

En nia kazo ĉi tiuj estas la sekvaj valoroj:

uid kaj gid

Por plenigi la agordodosieron, vi povas uzi pretajn agordojn aŭ uzi la dokumentaron en la oficiala retejo. Ankaŭ dosiero kun ekzemplo jam estas antaŭinstalita defaŭlte; vi povas trovi ĝin laŭ la pado: /cfg/3proxy.cfg.sample

Ekzemple, ni konsideros 2 tipojn de agordo: kun kaj sen protokolado . Ĉiun linion akompanos komentoj (ili estas markitaj per la simbolo "#").

Jen ekzemplo de preta agordo sen protokolado :

# 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

Ni konsideris la eblon de agordodosiero sen protokolado. Nun ni kreos agordodosieron kun protokolado kaj uzanta rajtigo ; ĝi estos uzata poste dum la agordo de la servilo.

Certigu, ke vi provizas rajtigajn informojn, ĉar la servilo povas esti detektita eĉ ĉe nenormaj pordoj.

# 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

Ĉi tio kompletigas la aranĝon de la ĉefa agorda dosiero. Ni transiras al la fina etapo kaj lanĉas.

paŝo 7

Kreu inicialigdosieron por systemd:

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

Donu la necesajn rajtojn:

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

Kopiu kaj algluu la sekvajn valorojn en la dosieron kaj konservu:

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

Bonvolu noti: en la valoro "ExecStop" vi devas specifi la uzantnomon kreitan en paŝo n-ro 5.

Post tio vi devas ĝisdatigi la Daemon-agordon per la komando:

systemctl daemon-reload

paŝo 8

Ni bezonas nur lanĉi la agordita 3-proxy, aldoni ĝin al aŭtomata starto kaj ankaŭ malfermi havenojn en la fajroŝirmilo.

Aldonu ĝin al aŭtomata starto, lanĉu kaj kontrolu staton:

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

Post kontroli la staton, ni vidas informojn, ke 3proxy estis lanĉita sukcese:

Prokurilo funkcias

Restas nur malfermi havenojn:

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

Se necese, rekomencu la servilon. Eblas kontroli ĉu la havenoj estas malfermitaj per la komando:

firewall-cmd --list-all

Kio devus esti:

Malfermu firewall havenojn

Kiel ni povas vidi, ambaŭ havenoj estis sukcese malfermitaj kaj estas aŭskultitaj. http-konekto estas sur la unua haveno, ŝtrumpetoj estas sur la dua haveno.

Kontrolu la konekton per iu ajn oportuna servo:

Sukcesa agordo de 3proxy

Ĉio funkcias. Niaflanke, ni ne rekomendas uzi nesekuritan konekton sen ensaluto/pasvorto rajtigo, same kiel kun norma aro da pordoj . Dum la agordodosiero, nepre specifu ensaluton kaj kreu kompleksan pasvorton, kaj ankaŭ ŝanĝu la pordojn al nenormaj . En esceptaj kazoj, eblas uzi IP-adresan rajtigon.

Oftaj problemoj

Io misfunkciis kaj la prokurilo ne funkcias? Eble la agordo de 3proxy estis farita malĝuste. Ni konsideru la plej oftajn problemojn kaj iliajn solvojn dum instalado kaj agordo de la utileco.

Neniu rilato

La plej ofta problemo por multaj uzantoj estas nealirebla konekto kiam la agordaj dosieroj ŝajnas esti agordita ĝuste. Se vi certas, ke ĉiuj agordoj estas ĝuste agordis, la gastiganta provizanto ne limigas la elektitan havenon kaj ĉiuj datumoj indikas funkciantan servon, la problemo povas esti en la Fajroŝirmilo aŭ, pli precize, ĝia malĝusta agordo. Ekzemple, povas esti pli ol du programoj instalitaj en la sistemo, kiuj konfliktos unu kun la alia. Por solvi la problemon, sufiĉas uzi unu specifan Fajromuron. Ni konsilas vin elekti nur iptables aŭ firewall-cmd.

La servo ne lanĉas

La servo ne ekfunkcias post la agordo de ĉiuj necesaj agordodosieroj. Tio okazas kiam agordopaŝo estas preterlasita, la taŭgaj rajtoj ne estas donitaj, aŭ eta eraro estas farita en la agordodosieroj. Ni rekomendas, ke vi atente restudu la instrukciojn paŝon post paŝo, eble vi preterlasis unu el la paŝoj. Se nenio helpas, estus bona ideo reinstali la operaciumon kaj sekvi ĉiujn paŝojn de la komenco. Ni rekomendas uzi la ekzemplon situantan ĉe /cfg/3proxy.cfg.sample, kiel testan agordon, kaj la antaŭinstalitan firewall-cmd kiel fajromuron.

tala

La fina, sed ne malpli grava afero rilatas al dosierstokado. 3proxy prenas plurajn mb dum instalado, sed la grandeco povas esti pliigita signife nur per enhakado kun la paso de tempo. La fakto estas, ke multaj uzantoj ebligas protokolregistradon en aparta dosiero, sed ne agordas rotacion kaj ne forigas negravajn protokolojn. Tri opcioj povas esti uzataj por solvo de ĉi tiu problemo:

  1. Ebligi ensalutadon;
  2. Periode forigu negravajn protokolojn;
  3. Ebligu rotacion, kiel estis farita en la supra agordo. Ekzemple, "rotacii 30" en la agorda dosiero signifas, ke 3proxy stokos nur la lastajn 30 dosierojn.

konkludo

Instali kaj agordi 3proxy ĉe operaciumoj CentOS kaj ArchLinux estas sufiĉe simpla, sed samtempe efika tasko. La artikolo kovris la paŝojn por instali la necesajn pakaĵojn, agordi agordajn dosierojn kaj lanĉi la servon. La akirita scio permesos vin instali kaj agordi vian prokuran servilon mem sen ajnaj malfacilaĵoj.

❮ Antaŭa artikolo Kiel restarigi Vindozan pasvorton
Sekva artikolo ❯ Kiel pliigi diskdiskon en Vindoza OS

Demandu nin pri VPS

Ni ĉiam pretas respondi viajn demandojn je ajna tempo de tago aŭ nokto.