Verkon suorituskyvyn, suojauksen ja vianmäärityksen tarkastaminen Linuxissa - Osa 12


Tietokoneverkon perusteellinen analyysi alkaa ymmärtämällä, mitkä työkalut ovat käytettävissä tehtävän suorittamiseen, kuinka valita oikea(t) jokaiseen vaiheeseen ja viimeisenä mutta ei vähäisimpänä, mistä aloittaa.

Tämä on LFCE (Linux Foundation Certified Engineer) -sarjan viimeinen osa. Tässä käydään läpi joitakin tunnettuja työkaluja verkon suorituskyvyn ja turvallisuuden parantamiseksi. , ja mitä tehdä, kun asiat eivät mene odotetulla tavalla.

Esittelyssä Linux Foundation -sertifiointiohjelma

Huomaa, että tämä luettelo ei väitä olevan kattava, joten voit vapaasti kommentoida tätä viestiä käyttämällä alareunassa olevaa lomaketta, jos haluat lisätä toisen hyödyllisen apuohjelman, joka saattaa puuttua.

Mitkä palvelut ovat käynnissä ja miksi?

Yksi ensimmäisistä asioista, jotka järjestelmänvalvojan on tiedettävä kustakin järjestelmästä, on mitkä palvelut ovat käynnissä ja miksi. Kun nämä tiedot ovat käsissä, on viisas päätös poistaa käytöstä kaikki ne, jotka eivät ole ehdottoman välttämättömiä, ja välttää liian monen palvelimen isännöintiä samassa fyysisessä koneessa.

Sinun on esimerkiksi poistettava FTP-palvelin käytöstä, jos verkkosi ei vaadi sitä (on muuten olemassa turvallisempia menetelmiä tiedostojen jakamiseen verkon yli). Lisäksi sinun tulee välttää verkkopalvelimen ja tietokantapalvelimen käyttöä samassa järjestelmässä. Jos yksi komponentti vaarantuu, myös muut ovat vaarassa joutua vaarantumiseen.

Socket-yhteyksien tutkiminen ss:n kanssa

ss:tä käytetään socket-tilastojen tyhjentämiseen ja se näyttää netstatin kaltaisia tietoja, vaikka se voi näyttää enemmän TCP- ja tilatietoja kuin muut työkalut. Lisäksi se on lueteltu kohdassa man netstat korvaamaan netstat, joka on vanhentunut.

Tässä artikkelissa keskitymme kuitenkin vain verkkoturvallisuuteen liittyviin tietoihin.

Esimerkki 1: Näytetään KAIKKI TCP-portit (socketit), jotka ovat avoinna palvelimellamme

Kaikki oletusporteissaan toimivat palvelut (eli http 80:ssa, mysql 3306:ssa) on merkitty vastaavilla nimillä. Muut (joita on piilotettu tässä tietosuojasyistä) näytetään numeerisessa muodossaan.

ss -t -a

Ensimmäinen sarake näyttää TCP-tilan, kun taas toisessa ja kolmannessa sarakkeessa näkyvät tiedon määrä, joka on tällä hetkellä jonossa vastaanottoa ja lähetystä varten. Neljäs ja viides sarake näyttävät kunkin yhteyden lähde- ja kohdepistokkeet.
Sivuhuomautuksena on, että voit tarkistaa RFC 793:n päivittääksesi muistisi mahdollisista TCP-tiloista, koska sinun on myös tarkistettava avointen TCP-yhteyksien määrä ja tila, jotta voit tietää (D)DoS-hyökkäyksistä.

Esimerkki 2: Näyttää KAIKKI aktiiviset TCP-yhteydet ajasteineen
ss -t -o

Yllä olevasta lähdöstä näet, että on olemassa 2 muodostettua SSH-yhteyttä. Jos huomaat ajastin:n toisen kentän arvon, huomaat arvon 36 minuuttia ensimmäisessä yhteydessä. Tämä on aika, jonka kuluttua seuraava säilytyslukema lähetetään.

Koska kyseessä on yhteys, jota pidetään elossa, voit turvallisesti olettaa, että se on epäaktiivinen yhteys ja voi siten lopettaa prosessin saatuaan selville sen PID:n.

Mitä tulee toiseen yhteyteen, voit nähdä, että se on parhaillaan käytössä (kuten on merkitty).

Esimerkki 3: Liitäntöjen suodatus pistorasian mukaan

Oletetaan, että haluat suodattaa TCP-yhteydet socketin mukaan. Palvelimen näkökulmasta sinun on tarkistettava yhteydet, joissa lähdeportti on 80.

ss -tn sport = :80

Johtaen..

Suojaa porttiskannaukselta NMAP:lla

Porttien skannaus on yleinen tekniikka, jota krakkarit käyttävät aktiivisen isäntien ja verkon avaavien porttien tunnistamiseen. Kun haavoittuvuus löydetään, sitä käytetään hyväksi päästäkseen järjestelmään.

Viisaan järjestelmänvalvojan on tarkistettava, miten ulkopuoliset näkevät hänen järjestelmänsä, ja varmistettava, ettei mitään jätetä sattuman varaan tarkastamalla niitä säännöllisesti. Sitä kutsutaan "puolustukseksi portin skannaukseksi".

Esimerkki 4: Tietojen näyttäminen avoimista porteista

Voit käyttää seuraavaa komentoa tarkistaaksesi, mitkä portit ovat avoinna järjestelmässäsi tai etäisännässä:

nmap -A -sS [IP address or hostname]

Yllä oleva komento tarkistaa isännästä käyttöjärjestelmän ja version tunnistuksen, porttitietojen ja jäljitysreitin (-A) varalta. Lopuksi -sS lähettää TCP SYN -skannauksen, joka estää nmapia suorittamasta 3-suuntaista TCP-kättelyä ja siten tyypillisesti ei jätä lokeja kohdekoneeseen.

Ennen kuin jatkat seuraavaa esimerkkiä, muista, että porttien skannaus ei ole laitonta toimintaa. Mikä ON laitonta, on tulosten käyttäminen haitalliseen tarkoitukseen.

Esimerkiksi yllä olevan komennon tulos, joka ajetaan paikallisen yliopiston pääpalvelinta vastaan, palauttaa seuraavan (vain osa tuloksesta näytetään lyhyyden vuoksi):

Kuten näet, löysimme useita poikkeavuuksia, joista meidän on hyvä ilmoittaa tämän paikallisen yliopiston järjestelmänvalvojille.

Tämä portin skannaustoiminto tarjoaa kaikki tiedot, jotka voidaan saada myös muilla komennoilla, kuten:

Esimerkki 5: Tietyn portin tietojen näyttäminen paikallisessa tai etäjärjestelmässä
nmap -p [port] [hostname or address]
Esimerkki 6: Tracerouten näyttäminen ja palveluiden version ja käyttöjärjestelmän tyypin, isäntänimen selvittäminen
nmap -A [hostname or address]
Esimerkki 7: Useiden porttien tai isäntien skannaus samanaikaisesti

Voit myös skannata useita portteja (alue) tai aliverkkoja seuraavasti:

nmap -p 21,22,80 192.168.0.0/24 

Huomaa: yllä oleva komento tarkistaa portit 21, 22 ja 80 kaikissa kyseisen verkkosegmentin isännissä.

Voit tarkistaa man-sivulta lisätietoja muun tyyppisten porttien tarkistuksen suorittamisesta. Nmap on todellakin erittäin tehokas ja monipuolinen verkkokartoitusapuohjelma, ja sinun tulee tuntea se erittäin hyvin, jotta voit puolustaa järjestelmiä, joista olet vastuussa, hyökkäyksiltä, jotka ovat peräisin ulkopuolisten haitallisesta portin tarkistuksesta.