Kuinka luetella avoimet portit Linuxissa?

How List Open Ports Linux



Verkostoitumisessa portti on mielenkiintoinen ominaisuus. Se on tapa verkkoliikenteelle tunnistaa kohdesovellus tai -palvelu. Jokainen prosessi/palvelu saa oman porttinsa. Portti liitetään aina isännän IP -osoitteeseen protokollan kanssa.

Tämä on suosikki metaforani kuvaamaan mitä satama on. Kuvittele alus, joka on lastattu lastilla ja joka matkustaa kaukaiseen maahan. Mitä tietoja tarvitaan päästäkseen määränpäähän oikein? Sanotaan yksinkertaisuuden vuoksi, että se tarvitsee maan (IP -osoitteen) ja satamaan alus sattuu.







Tässä oppaassa voit tarkistaa, kuinka avoimet portit luetellaan Linuxissa.



Portit Linuxissa

Portit toimivat viestinnän päätepisteenä. Se on 16-bittinen luku (0–65535 desimaalilukuna). Vaikka valikoima on suuri, portit on luokiteltu käytön helpottamiseksi kolmeen luokkaan. Jokainen luokka on merkitty portin arvoalueeksi:



  • 0-1023: Nämä ovat tunnettuja portteja, joita kutsutaan myös järjestelmäportteiksi ja jotka on varattu järjestelmäprosesseille, jotka tarjoavat laajan valikoiman verkkopalveluja. Jotta prosessi voidaan yhdistää tunnettuun porttiin, sillä on oltava pääkäyttäjän oikeudet.
  • 1024-49151: Nämä ovat rekisteröityjä portteja, jotka tunnetaan myös nimellä käyttäjäportit, jotka IANA on nimennyt tietyille palveluille. Pyynnöstä prosessilla voi olla pääsy niihin. Useimpien järjestelmien tapauksessa näiden porttien käyttäminen ei vaadi pääkäyttäjän oikeuksia.
  • 49152 - 65535: Nämä ovat dynaamisia portteja, jotka tunnetaan myös nimellä yksityiset portit. Näitä portteja ei voi rekisteröidä IANA: lle. Nämä portit ovat avoimia yksityisille tai räätälöidyille palveluille, ja ne voidaan myös varata automaattisesti hetkellisiksi portteiksi (IP: n käyttämät lyhytikäiset portit).

Linuxissa on useita tapoja tarkistaa avoimet portit. Oletuksena kaikki portit pysyvät suljettuina, ellei sovellus käytä niitä. Jos portti on auki, se on määritettävä palvelulle/prosessille.





Listaa avoimet portit

On helpompi tunnistaa käytössä olevat portit kuin avoimet portit. Siksi seuraavassa osassa on tapoja luetella kaikki käytössä olevat portit. Linuxissa tehtävään on käytettävissä useita työkaluja. Suurin osa niistä on sisäänrakennettu mihin tahansa Linux-distroon.

Oppiminen, mitkä portit ovat tällä hetkellä auki, voi olla hyödyllistä eri tilanteissa. On mahdollista määrittää oma portti tietylle sovellukselle. Avoin portti voi myös olla vahva osoitus verkon tunkeutumisesta.



Seuraavat menetelmät esitetään Ubuntu 20.04.1 LTS: ssä.

Listaa protokollat ​​ja avoimet portit /etc /services

Tiedosto /etc /services sisältää tietoja parhaillaan käynnissä olevista palveluista. Se on iso tiedosto, joten se on valmis ylikuormittumaan.

$kissa /jne/palvelut| Vähemmän

Listaa avoimet portit netstatin avulla

Netstat -työkalu on apuohjelma, joka näyttää verkkoyhteydet TCP: lle, reititystaulukoille ja erilaisille verkkoliitäntöille. Se tarjoaa myös verkkoprotokollatilastoja. Käyttämällä netstatia voimme luetella kaikki järjestelmän avoimet portit.

Suorita seuraava netstat -komento:

$netstat -atu

Tarkastellaan nopeasti kaikkia tässä komennossa käyttämiämme lippuja.

  • kohteeseen : Käyttää netstatia näyttämään kaikki pistorasiat
  • t : Käyttää netstatia luettelemaan TCP -portit
  • u : Käyttää netstatia luettelemaan UDP -portit

Tässä on toinen muunnelma netstat -komennosta:

$netstat -Lntu

Komennossa käytetään kahta uutta lippua. Mitä he tarkoittavat?

  • the : Käyttää netstatia tulostamaan vain kuunteluliittimet
  • n : Käyttää netstatia näyttämään portin numeron

Jos haluat näyttää porttia käyttävän prosessin PID -tunnuksen, käytä -p -lippua:

$netstat -Intup

Listaa avoimet portit ss: llä

Ss -työkalu on apuohjelma pistorasian tutkimiseen. Sen käyttö on samanlaista kuin netstat.

Voit listata avoimet portit suorittamalla seuraavan ss -komennon:

$ss-Lntu

Liput ovat samanlaisia ​​kuin netstat. Niiden kuvaamat toiminnot ovat myös melko samanlaisia.

  • the : Käyttää ss: ää näyttämään kuunteluliitännät
  • n : Kehoittaa ss: tä olemaan yrittämättä ratkaista palvelunimiä
  • t : Käyttää ss: ää näyttämään TCP -liitännät
  • u : Käyttää ss: tä näyttämään UDP -liitännät

Luettele avoimet portit lsofin avulla

Lsof -komento on listata avoimet tiedostot. Sitä voidaan kuitenkin käyttää myös avoimien porttien näyttämiseen.

Suorita seuraava lsof -komento:

$lsof-i

Jos haluat saada tietyn protokollan (TCP, UDP jne.) Avoimet portit, määritä se sitten -i -lipun jälkeen, käytä:

$lsof-i <protokollaa>

Luettele avoimet portit nmapin avulla

Nmap -työkalu on tehokas työkalu verkon etsintään ja suojaukseen/porttien skannaukseen. Se voi raportoida kaikki järjestelmän avoimet portit.

Voit listata avoimet TCP -portit suorittamalla seuraavan nmap -komennon. Tässä IP -osoite on isäntätietokoneelta:

$sudo nmap -T -p-paikallinen isäntä

Tässä on kaksi osaa komentoargumentista.

  • -T : Tässä osassa neuvotaan nmap etsimään TCP -portteja.
  • -p- : Tämä kehottaa nmapia tarkistamaan kaikki 65535 -portit. Jos sitä ei käytetä, nmap skannaa oletusarvoisesti vain 1000 porttia.

Jos haluat luetella avoimet UDP -portit, suorita seuraava nmap -komento:

$sudo nmap -sen -p-paikallinen isäntä

Jos haluat saada sekä avoimen TCP- että UDP -portin, käytä seuraavaa komentoa:

$sudo nmap -n -PN -T -sen -p-paikallinen isäntä

Listaa avoimet portit netcatin avulla

Netcat -työkalu on komentorivityökalu tietojen lukemiseen ja kirjoittamiseen verkkoyhteyksien kautta TCP- ja UDP -protokollien kautta. Tätä työkalua voidaan käyttää myös avoimien porttien luettelointiin. Se voi suorittaa testejä tietyllä portilla tai useilla porteilla.

Seuraava netcat -komento skannaa portin välillä 1 - 1000. Netcat -komento suorittaa oletusarvoisesti skannauksen TCP -protokollalla:

$nc-Kanssa -vpaikallinen isäntä1-1000

Se voidaan myös laajentaa koskemaan kaikkia mahdollisia portteja:

$nc-Kanssa -vpaikallinen isäntä1-65535

Jakakaamme liput nopeasti.

  • Kanssa : Kehottaa netcatia etsimään vain avoimia portteja lähettämättä tietoja
  • v : Käyttää netcatia toimimaan monitahoisessa tilassa

Jos haluat saada vain avoimet portit tästä luettelosta, suodata lähtö grep: llä termille onnistunut.

$nc-Kanssa -vpaikallinen isäntä0-65535 2> &1 | pitoonnistunut

Jos haluat suorittaa skannauksen UDP -protokollalla, lisää -u -lippu.

$nc-Kanssa -v -upaikallinen isäntä0-65535 2> &1 | pitoonnistunut

Lopulliset ajatukset

Kuten on osoitettu, on olemassa useita tapoja skannata avoimia portteja Linuxissa. Suosittelen kokeilemaan kaikkia menetelmiä ennen kuin päätät kumman hallita. Jos käytät tiettyä työkalua, kuten netcat tai nmap, säännöllisesti, siihen liittyvien menetelmien hallitseminen on hyödyllisintä.

Hyvää tietojenkäsittelyä!