Artikulu honetan ArchLinux/CentOS sistema eragileak bultzatutako zerbitzari dedikatu batean 3proxy konfigurazioa erakutsiko dugu. 3proxy tresna garrantzitsu eta funtzionaletako bat da. Hainbat protokolo mota onartzen ditu: HTTP, HTTPS, FTP, SOCKS eta beste batzuk. Zure proxy zerbitzaria konfiguratzen lagunduko dizu minutu gutxitan.
Artikuluak utilitatea instalatzeko eta konfiguratzeko urratsez urratseko argibideak ditu. Iturri ofizial batetik instalatzea, konfigurazio fitxategiak ezartzea, portu ez-estandarrak irekitzea bezalako arazoak aztertzen dira, baita ohiko akatsak deskribatzen dira eta horiek konpontzeko gomendio praktikoak ematen dira. Abiarazi aurretik, CentOS edo ArchLinux sistema eragileak elikatzen duen VPS edo zerbitzari dedikatu bat eskatu behar duzu . Adibideko ekintza guztiak CentOS7 sistema eragileak elikatzen duen zerbitzari dedikatu batean egingo dira, IP helbide publiko estatiko dedikatu batekin.
instalazioa
Urratsera 1
3proxy zuzenean iturburuetatik instalatzen da. gcc erabiliko da konpiladore gisa. Zerbitzarira root (supererabiltzaile) gisa konektatzen gara eta konpiladorea instalatzen dugu.
yum install gcc
Urratsera 2
Orain 3proxy iturburu fitxategiak deskargatu behar dira. Horretarako, webgune ofizialera joan eta uneko bertsiorako esteka kopiatu dezakezu :
Artxibatutako bertsio bat behar baduzu, esteka zuzenean GitHub- etik ere deskargatu dezakezu :
Artikulu hau idazteko momentuan, oraingo bertsioa 0.9.3 da. Deskargatu eta berehala deskonprimitu:
wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz
Urratsera 3
Joan deskonprimitutako proiektua duen direktoriora eta konpilatu:
cd 3proxy-0.9.3/
make -f Makefile.Linux
Urratsera 4
Direktorioak sortzen ditugu eta 3proxy fitxategia /usr/bin-era kopiatzen dugu:
mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/
Urratsera 5
Katalogoarekin lan egiteko erabiltzaile bat sortzen dugu. Kasu honetan, erabiltzaile-izena 3proxyuser da:
useradd -s /usr/sbin/nologin -U -M -r 3proxyuser
Direktorioekin lan egiteko eskubideak ematen dizkiogu sortutako erabiltzaileari:
chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy
Sortu dezagun konfigurazio fitxategi bat komandoa erabiliz:
touch /etc/3proxy/3proxy.cfg
Beharrezkoa bada, baimenak ezar ditzakezu root erabiltzailearentzako konfigurazio fitxategian. Urrats hau ez da derrigorrezkoa, baina babesa gehituko du:
chmod 600 /etc/3proxy/3proxy.cfg
3proxy konfigurazioa
Urratsera 6
Beharrezkoa da lehenago sortu zen konfigurazio fitxategia behar bezala betetzea. Lehenik eta behin, aurkitu erabiltzailearen uid eta gid komandoaren bidez:
id 3proxyuser
Gure kasuan hauek dira balio hauek:
Konfigurazio fitxategia betetzeko, aurrez egindako konfigurazioak har ditzakezu edo webgune ofizialean dagoen dokumentazioa erabil dezakezu . Gainera, adibide bat duen fitxategi bat aurrez instalatuta dago lehenespenez; bide honetan aurki dezakezu: /cfg/3proxy.cfg.sample
Adibide gisa, 2 konfigurazio mota aztertuko ditugu: erregistroarekin eta erregistrorik gabe . Lerro bakoitzarekin iruzkinak egongo dira ("#" ikurrarekin markatuta daude).
Hona hemen erregistrorik gabeko konfigurazio prest egindako baten adibidea :
# 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
Erregistrorik gabeko konfigurazio fitxategi baten aukera aztertu dugu. Orain erregistroa eta erabiltzaile baimena dituen konfigurazio fitxategi bat sortuko dugu ; geroago zerbitzaria konfiguratzean erabiliko da.
Ziurtatu baimen-informazioa ematen duzula, zerbitzaria portu ez-estandarretan ere detektatu baitaiteke.
# 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
Honek konfigurazio fitxategi nagusiaren konfigurazioa osatzen du. Azken fasera pasa eta martxan jartzen gara.
Urratsera 7
Sortu hasierako fitxategi bat systemd-erako:
touch /etc/systemd/system/3proxy.service
Beharrezko eskubideak eman:
chmod 664 /etc/systemd/system/3proxy.service
Kopiatu eta itsatsi balio hauek fitxategian eta gorde:
[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»
Kontuan izan: “ExecStop” balioan 5. urratsean sortutako erabiltzaile-izena zehaztu behar duzu.
Horren ondoren, Daemon konfigurazioa eguneratu behar duzu komandoarekin:
systemctl daemon-reload
Urratsera 8
Behar dugun bakarra da konfiguratutako 3proxy abiarazi, abiarazte automatikoan gehitzea eta suebakian atakak ere irekitzea.
Gehitu abiarazteko, abiarazteko eta egiaztatu egoerara:
systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy
Egoera egiaztatu ondoren, 3proxy arrakastaz abiarazi den informazioa ikusiko dugu:
Portuak irekitzea da geratzen den gauza bakarra:
firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload
Beharrezkoa bada, berrabiarazi zerbitzaria. Portuak irekita dauden ala ez egiaztatzeko aukera dago komandoarekin:
firewall-cmd --list-all
Zer izan behar du:
Ikus dezakegunez, bi portuak arrakastaz ireki dira eta entzuten ari dira. http konexioa lehenengo portuan dago, galtzerdiak bigarren portuan.
Egiaztatu konexioa edozein zerbitzu erosoren bidez:
Dena funtzionatzen ari da. Gure aldetik, ez dugu gomendatzen konexio ez-seguru bat erabiltzea saioa hasteko/pasahitz baimenik gabe, baita portu multzo estandar batekin ere . Konfigurazio fitxategia konfiguratzerakoan, ziurtatu saioa hasteko bat zehazten duzula eta pasahitz konplexu bat sortzen duzula, eta portuen aldaketak ere estandarrak ez direnetara aldatzen dituzula . Salbuespenezko kasuetan, IP helbidearen baimena erabil daiteke.
Ohiko arazoak
Arazoren bat izan da eta proxyak ez du funtzionatzen? Agian 3proxy konfigurazioa gaizki egin zen. Kontuan ditzagun arazo ohikoenak eta haien konponbideak utilitatea instalatu eta konfiguratzean.
Ez dago konexiorik
Erabiltzaile askoren arazo ohikoena sarbidea ezinezko konexioa da konfigurazio fitxategiak behar bezala konfiguratuta daudela dirudienean. Ezarpen guztiak behar bezala konfiguratu direla ziur bazaude, ostalaritza-hornitzaileak ez du aukeratutako ataka mugatzen eta datu guztiek funtzionatzen ari den zerbitzu bat adierazten dute, arazoa Suebakian egon daiteke edo, zehatzago esanda, bere konfigurazio okerra. Adibidez, sisteman bi programa baino gehiago instalatuta egon daitezke elkarren artean gatazkan egongo direnak. Arazoa konpontzeko, nahikoa da Firewall zehatz bat erabiltzea. iptables edo firewall-cmd soilik hautatzea gomendatzen dizugu.
Zerbitzua ez da abiarazten
Zerbitzua ez da abiarazten beharrezko konfigurazio fitxategi guztiak konfiguratu ondoren. Hau gertatzen da konfigurazio urrats bat galtzen denean, eskubide egokiak ez direnean ematen edo konfigurazio fitxategietan akats txiki bat egiten denean. Gomendatzen dizugu arretaz argibideak urratsez urrats berriro aztertzea, agian urratsen bat galdu duzu. Ezerk laguntzen ez badu, ideia ona litzateke sistema eragilea berriro instalatzea eta hasieratik urrats guztiak jarraitzea. /cfg/3proxy.cfg.sample helbidean dagoen lagina erabiltzea gomendatzen dugu proba konfigurazio gisa, eta aurrez instalatutako firewall-cmd firewall gisa.
Logging
Azken gaia, baina ez hain garrantzitsua, fitxategiak biltegiratzeari dagokio. 3proxy-k hainbat mb hartzen ditu instalazioan, baina tamaina nabarmen handitu daiteke denboraren poderioz erregistroaren bidez soilik. Kontua da erabiltzaile askok erregistro-grabaketa fitxategi bereizi batean gaitzen dutela, baina ez dutela biraketa konfiguratzen eta ez dutela garrantzirik gabeko erregistroak ezabatzen. Hiru aukera erabil daitezke arazo hau konpontzeko:
- Gaitu erregistroa;
- Aldian-aldian ezabatu garrantzirik gabeko erregistroak;
- Gaitu biraketa, goiko konfigurazioan egin zen bezala. Adibidez, "biratu 30" konfigurazio fitxategian esan nahi du 3proxy-k azken 30 fitxategiak soilik gordeko dituela.
Ondorioa
CentOS eta ArchLinux sistema eragileetan 3proxy instalatzea eta konfiguratzea nahiko lan erraza da, baina aldi berean eraginkorra. Artikuluak beharrezko paketeak instalatzeko, konfigurazio fitxategiak konfiguratzeko eta zerbitzua abiarazteko urratsak biltzen zituen. Lortutako ezagutzak zure proxy zerbitzaria zuk zeuk instalatu eta konfiguratu ahal izango duzu inolako zailtasunik gabe.