Kaip atidaryti prievadus „Linux“.
"Linux" Ubuntu „Ubuntu“ Pagrindai Herojus / / March 02, 2022

Paskutinį kartą atnaujinta

Jei norite leisti išorinius ryšius su kompiuteriu ar serveriu, turėsite atidaryti tinkamą prievadą. „Linux“ vartotojai gali atidaryti prievadus naudodami šį naudingą vadovą.
Reikia prisijungti prie išorinio kompiuterio ar serverio, ar reikia kito kompiuterio ar serverio, kad prisijungtų prie jūsų? Jei naudojate „Linux“, turėsite įsitikinti, kad atidarytas tinkamas prievadas.
Nors kitos operacinės sistemos paprastai turi tam tikrą grafinį įrankį, Linux nėra taip paprasta. Toliau paaiškinsime, kaip atidaryti prievadus sistemoje „Linux“.
Kas yra prievadas ir kodėl turėčiau jį atidaryti?
Prievadas yra galutinis tinklo taškas. Pagalvokite apie tai kaip apie duris, vedančias į tam tikrą patalpą ar išorinį pasaulį, bet jūsų kompiuteryje. Viskas, ką darote internete, naudoja tam tikrą prievadą arba prievadų seriją.
Pavyzdžiui, tarkime, kad norite paleisti savo Minecraft serverį. Norėdami tai padaryti, turėsite atidaryti prievadą, kad vartotojai galėtų prie jo prisijungti. Tas pats pasakytina ir apie savo žiniatinklio, pašto ar FTP serverio valdymą.
Uostai yra standartizuotas visame tinkle prietaisų. Pirmieji 1024 prievadai (nuo 0 iki 1023) vadinami gerai žinomi prievadų numeriai. Jie yra rezervuoti dažniausiai naudojamoms paslaugoms, tokioms kaip HTTP ir HTTP (atitinkamai 80 ir 443 prievadas) ir SSH (22 prievadas).
Prievado numeriai, viršijantys 1024, vadinami trumpalaikiai uostai, ir paprastai jas galite naudoti internetiniams žaidimams, privačiuose žiniatinklio serveriuose ir kt. Iškviečiami prievadų numeriai nuo 1024 iki 49151 registruotas arba vartotojo prievadai, o nuo 49152 iki 65535 yra žinomi kaip dinamiškas arba privatūs uostai.
„Linux“ atvirų prievadų sąrašas
Prieš bandydami atidaryti prievadą sistemoje „Linux“, įsitikinkite, kad jis dar nenaudojamas. Tai galite padaryti naudodami netstat komanda, įtraukta į daugumą Linux platinimų. Jei paskirstymas neturi netstat, tu gali naudoti ss vietoj to.
netstat -lntu.

Taip bus išspausdinti visi klausymosi lizdai (-l), kartu su prievado numeriu (-n). Jame yra TCP prievadai (-t), taip pat UDP (-u). Jei jūsų sistemoje nėra netstat, tiesiog naudokite ss su tais pačiais parametrais.
ss -lntu.

Kaip atidaryti prievadus „Linux“.
Šiame pavyzdyje manysime, kad norime atidaryti 4000 prievadą TCP ryšiams. Pirmiausia turime įsitikinti, kad prievadas dar nenaudojamas. Mes tai darome per netstat arba ss.
netstat -na | grep: 4000. ss -na | grep: 4000.
Darant prielaidą, kad išvestis tuščia, galime pridėti atitinkamas prievado taisykles prie sistemos ugniasienės. Metodai skirtis priklausomai nuo jūsų platinimo ir nuo to, ar jame naudojama naujesnė versija ufw ugniasienė arba ugniasienė. Ubuntu teikia pirmenybęufw, kol CentOS paprastai naudojaugniasienė vietoj to. Žinoma, vis dar yra kai kurie „Linux“ paskirstymai, naudojantys senesnius iptables ugniasienė.
„Ubuntu“ vartotojams ir kitoms „ufw“ ugniasienėmis pagrįstoms sistemoms
Užuot naudoję senesnį iptables naudoja ugniasienę, Ubuntu ir kai kuriuos kitus platinimus ufw. Šiose sistemose prievadą atidarys ši komanda.
sudo ufw leidžia 4000.
Praleiskite kelis kitus veiksmus ir patikrinkite naujai atidarytą prievadą, kad įsitikintumėte, jog jis veikia.
Kaip atidaryti prievadus Linux naudojant CentOS ir kitas ugniasienės sistemas
Jei jūsų sistema naudoja ugniasienė, geriausia naudoti ugniasienė-cmd komanda atnaujinti taisykles.
sudo firewall-cmd --add-port=4000/tcp.
Tai nebus nuolatinis pakeitimas, bet apžvelgsime, kaip užtikrinti, kad taisyklės išliktų paleidus iš naujo, kai išbandysime prievadą.
Kitiems Linux platinimams
Jei jūsų Linux sistemoje nėra ufw arba ugniasienė, turėsite naudoti iptables. Jei jis neįdiegtas, eikite į priekį ir gaukite jį naudodami pasirinktą paketų tvarkyklę. Kai jis bus įdiegtas, šios komandos atidarys 4000 prievadą:
sudo iptables -A INPUT -p tcp --dport 4000 -j PRIIMTI. sudo paslauga iptables paleisti iš naujo.
Jei jūsų sistema naudoja systemctl, pakeiskite antrąją komandą į:
sudo systemctl iš naujo paleiskite iptables.
Naujai atidarytų prievadų jungčių testavimas
Tada turėtume išbandyti prievadą, kad įsitikintume, ar jis priima ryšius. Mes tai darome naudodami netcat (nc), norėdami klausytis prievado, tada bandyti prisijungti prie jo.
Pirmiausia atidarykite terminalo langą ir išduokite šią komandą:
sudo ls | nc -l -p 4000.
Palikite jį veikti (klausykite) ir atidarykite antrą terminalo langą. Tame lange naudosite „Telnet“, kad patikrintumėte ryšį. Jei telnet neįdiegtas, padarykite tai naudodami paketų tvarkyklę.
telnet [hostname/IP address] [prievado numeris]
Pakeiskite [prieglobos serverio pavadinimas/IP adresas] su savo sistemos IP adresu ir [porto numeris] su atidarytu prievado numeriu.
Telnet localhost 4000.
Žemiau turėtumėte matyti tokią išvestį, kuri rodo atvirą ryšį su nc.

Taip pat galime parodyti, kad prievadas yra atidarytas nmap. Vėlgi, jei komanda dar neįdiegta, naudokite paketų tvarkyklę, kad ją gautumėte.
nmap localhost -p 4000.

Prisimink tai nmap bus išvardyti tik atviri prievadai, kurie klausosi jungčių. Štai kodėl mes naudojame netcat testavimui, klausymui tame prievade. Priešingu atveju prievadas nebus užregistruotas kaip atidarytas.
Negaliu prisijungti prie prievado, kurį ką tik atidariau, kas dabar?
Jei atliekate visus anksčiau nurodytus veiksmus ir nepavyksta prisijungti prie prievado, dar kartą patikrinkite, ar įvedėte tekstą. Jei esate tikri, kad viską įvedėte teisingai, tikėtina, kad turėsite iš naujo sukonfigūruoti tinklo maršruto parinktuvą, kad leistų srautą.
Kadangi kiekvienas tinklo maršrutizatorius turi skirtingus konfigūracijos ekranus, turėtumėte ieškoti pagalbos puslapiuose arba konkrečios įrangos naudotojo vadove. Turėsite patikrinti prievado persiuntimo arba prievado susiejimo nustatymus, taip pat bet kokią integruotą užkardą, kurią gali naudoti maršrutizatorius.
Kaip visam laikui atidaryti prievadą „Linux“.
Išbandę atvirą prievadą ir įsitikinę, kad jis veikia, tikriausiai norėsite pakeitimą padaryti visam laikui. Priešingu atveju pakeitimai gali nepasilikti po perkrovimo. Jei esate Ubuntu vartotojas arba kitaip naudokite ufw ugniasienė, jums nereikia dėl to jaudintis. The ufw taisyklės nenustatomos iš naujo paleidžiant iš naujo.
Užkardos naudotojams
Lengva priversti prievado taisyklę išlikti po paleidimo iš naujo ugniasienė. Tiesiog pridėkite – nuolatinis pažymėkite pradinę komandą ir ji bus įtraukta į jūsų Linux sistemos ugniasienės taisykles paleidžiant.
sudo firewall-cmd --add-port=4000/tcp --permanent.
Jei vis dar naudojate iptables
The iptables ugniasienė yra daug sudėtingesnė (galbūt gera priežastis atnaujinti į ugniasienė arba ufw). Norėdami „visam laikui“ atidaryti prievadą iptables, galite įdiegti iptables-persistent paketas padėti.
Kai pirmą kartą įdiegiate iptables-persistent „Debian“ pagrindu veikiančioje sistemoje išsaugos dabartines taisykles bet kuriame iš jų /etc/iptables/rules.v4 arba /etc/iptables/rules.v6. Norėdami pridėti naujų taisyklių, išduokite šią komandą:
sudo iptables-save > /etc/iptables/rules.v4.
ARBA
sudo iptables-save > /etc/iptables/rules.v6.
Tiems, kurie naudoja RPM pagrįstus „Linux“ paskirstymus, tai šiek tiek skiriasi. Paketas vadinamas iptables-services, o išsaugojimo failai yra /etc/sysconfig/iptables ir /etc/sysconfig/ip6tables.
RPM pagrįstuose platinimuose taip pat yra kita komanda, naudojama IPv6 prievadams. Taisyklės išsaugomos naudojant vieną iš šių dviejų komandų:
sudo iptables-save > /etc/sysconfig/iptables. sudo ip6tables-save > /etc/sysconfig/iptables.
Būtinai stebėkite savo prievado naudojimą
Laikui bėgant serverio poreikiai gali keistis. Kaip ir reikia neatsilikti nuo vartotojų paskyrų „Linux“ kompiuteryje taip pat turėtumėte reguliariai tikrinti atvirus prievadus. Uždarykite visus atidarytus prievadus, kurių nebereikia. Kartu su reguliariai pakeisti slaptažodį, tai yra gera saugumo praktika, kuri padės išvengti įsibrovimų į sistemą ir saugumo išnaudojimo.