Sett opp Cacti på Debian Jessie
Introduksjon Cacti er et åpen kildekode overvåkings- og grafverktøy som er fullt basert på RRD-data. Gjennom Cacti kan du overvåke nesten alle typer enheter
Hvis du kjører en server, vil du utvilsomt komme til et punkt hvor du trenger å fikse noen nettverksrelaterte problemer. Selvfølgelig ville det være lett å bare sende en e-post til supportavdelingen, men noen ganger må du skitne på hendene. I dette tilfellet tcpdump
er verktøyet for den jobben. Tcpdump er en nettverkspakkeanalysator som kjører under kommandolinjen.
Denne artikkelen vil deles inn i tre deler:
Siden tcpdump ikke er inkludert i de fleste basissystemer, må du installere det. Imidlertid har nesten alle Linux-distribusjoner tcpdump i sine kjernelager. For Debian-baserte distribusjoner er kommandoen for å installere tcpdump:
apt-get install tcpdump
For CentOS/RedHat, bruk følgende kommando:
yum install tcpdump
FreeBSD tilbyr en forhåndsbygd pakke som kan installeres ved å utstede:
pkg install tcpdump
Det er også en port tilgjengelig, net/tcpdump
som kan installeres via:
cd /usr/ports/net/tcpdump
make install clean
Hvis du kjører tcpdump
uten noen argumenter, vil du bli slått med resultater. Å kjøre den på en nyopprullet instans her på Vultr i mindre enn fem sekunder gir følgende resultater:
2661 packets captured
2663 packets received by filter
0 packets dropped by kernel
Før du går inn på flere detaljer om hvordan du filtrerer inndata, bør du ta en titt på noen parametere som kan sendes til tcpdump:
-i
- Spesifiserer grensesnittet du vil lytte på, for eksempel: tcpdump -i eth0
.-n
- Ikke prøv å gjøre omvendte oppslag på IP-adresser, for eksempel: tcpdump -n
(hvis du legger til en annen n
vil tcpdump vise deg portnumre i stedet for navn).-X
- Vis innholdet i de innsamlede pakkene: tcpdump -X
.-c
- Bare fangst x
pakker, som x
er et vilkårlig tall, tcpdump -c 10
fanger for eksempel nøyaktig 10 pakker.-v
- Øk mengden pakkeinformasjon du blir vist, mer v
s legg til mer ordlyd.Hver av parametrene nevnt her kan kombineres sammen. Hvis du ønsket å fange 100 pakker, men bare på VPN-grensesnittet tun0, ville tcpdump-kommandoen se slik ut:
tcpdump -i tun0 -c 100 -X
Det er dusinvis (om ikke hundrevis) av alternativer i tillegg til de få, men de er de vanligste. Les gjerne tcpdumps manpage på systemet ditt.
Nå som du har en grunnleggende forståelse av tcpdump, er det på tide å se på en av tcpdumps mest fantastiske funksjoner: uttrykk. Uttrykk vil gjøre livet ditt mye enklere. De er også kjent som BPF- eller Berkeley-pakkefiltre. Ved å bruke uttrykk kan du selektivt vise (eller ignorere) pakker basert på visse egenskaper - som opprinnelse, destinasjon, størrelse eller til og med TCP-sekvensnummer.
Så langt har du klart å begrense søket til en viss mengde pakker på et bestemt grensesnitt, men la oss være ærlige her: det etterlater fortsatt for mye bakgrunnsstøy til å fungere effektivt med de innsamlede dataene. Det er der uttrykk spiller inn. Konseptet er ganske enkelt, så vi utelater den tørre teorien her og støtter forståelsen med noen praktiske eksempler.
Uttrykkene du sannsynligvis kommer til å bruke mest er:
host
- Se etter trafikk basert på vertsnavn eller IP-adresser.src
eller dst
- Se etter trafikk fra eller til en bestemt vert.proto
- Se etter trafikk av en bestemt protokoll. Fungerer for tcp, udp, icmp og andre. Å utelate proto
nøkkelordet er også mulig.net
- Se etter trafikk til/fra et visst utvalg av IP-adresser.port
- Se etter trafikk til/fra en bestemt havn.greater
eller less
- Se etter trafikk som er større eller mindre enn en viss mengde byte.Mens manpage for tcpdump
bare inneholder noen få eksempler, har manpage for pcap-filter
svært detaljerte forklaringer på hvordan hvert filter fungerer og kan brukes.
Hvis du vil se hvordan kommunikasjonen din med en bestemt server går, kan du host
for eksempel bruke nøkkelordet (inkludert noen av parameterne ovenfra):
tcpdump -i eth0 host vultr.com
Noen ganger er det datamaskiner på nettverket som ikke respekterer MTU eller spammer deg med store pakker; å filtrere dem ut kan noen ganger være vanskelig. Uttrykk lar deg filtrere ut pakker som er større eller mindre enn et visst antall byte:
tcpdump -i eth0 -nn greater 128
or
tcpdump -i eth0 -nn less 32
Kanskje bare en viss havn er av interesse for deg. I dette tilfellet bruker du port
uttrykket:
tcpdump -i eth0 -X port 21
Du kan også se etter portområder:
tcdump -i eth0 -X portrange 22-25
Siden NAT-gatewayer er ganske vanlige, kan du bare se etter destinasjonsporter:
tcpdump dst port 80
Hvis du ser på trafikk til webserveren din, vil du kanskje bare se på TCP-trafikk til port 80:
tcpdump tcp and dst port 80
Du spør deg sikkert hva søkeordet and
gjør der. Godt spørsmål. Det bringer oss til den siste delen av denne artikkelen.
tcpdump
tilbyr grunnleggende støtte for logiske uttrykk, mer spesifikt:
and
/ &&
- Logisk "og".or
/ ||
- Logisk "eller".not
/ !
- Logisk "ikke".Sammen med muligheten til å gruppere uttrykk sammen, lar dette deg lage svært kraftige søk etter innkommende og utgående trafikk. Så la oss filtrere ut trafikk som kommer fra vultr.com på port 22 eller 443:
tcpdump -i eth0 src host vultr.com and (dst port 22 or 443)
Å kjøre dette på kommandolinjen vil gi deg følgende feil:
bash: syntax error near unexpected token `('
Det er fordi det er et forbehold: bash
prøver å evaluere hver karakter den kan. Dette inkluderer den (
og )
tegn. For å unngå denne feilen bør du bruke enkle anførselstegn rundt det kombinerte uttrykket:
tcpdump -i eth0 'src host vultr.com and (dst port 22 or 443)'
Et annet nyttig eksempel: Når du feilsøker SSH-problemer med en av brukerne dine, vil du kanskje ignorere alt som er relatert til SSH-økten din:
tcpdump '!(host $youripaddress) && port 22)'
Igjen, brukstilfellene er uendelige, og du kan spesifisere i ekstreme dybder hva slags trafikk du vil se. Følgende kommando vil bare vise deg SYNACK-pakker av et TCP-håndtrykk:
tcpdump -i eth0 'tcp[13]=18'
Dette fungerer ved å se på den trettende forskyvningen til TCP-overskriften og den attende byten i den.
Hvis du kom deg helt hit, er du klar for de fleste brukstilfeller som vil dukke opp. Jeg kan knapt ta på overflaten uten å gå inn i for mange detaljer. Jeg anbefaler på det sterkeste at du eksperimenterer litt videre med de forskjellige alternativene og uttrykkene; og som vanlig: referer til manpage når du går deg vill.
Sist men ikke minst – et raskt tilbakeblikk. Husker du begynnelsen av denne artikkelen? Med tusenvis av pakker fanget i løpet av sekunder? Kraften til tcpdump
kan trimme det ned mye:
tcpdump -i eth0 tcp port 22
Resultatet er nå:
81 packets captured
114 packets received by filter
0 packets dropped by kerne
Dette er mye sunnere og lettere å feilsøke. Godt nettverk!
Introduksjon Cacti er et åpen kildekode overvåkings- og grafverktøy som er fullt basert på RRD-data. Gjennom Cacti kan du overvåke nesten alle typer enheter
Introduksjon Lets Encrypt er en sertifikatmyndighetstjeneste som tilbyr gratis TLS/SSL-sertifikater. Installasjonsprosessen forenkles av Certbot,
Bruker du et annet system? Denne opplæringen viser deg hvordan du installerer gruppevaren iRedMail på en ny installasjon av Debian Wheezy. Du bør bruke en serve
1. Virtualmin/Webmin Virtualmin er et kraftig og fleksibelt kontrollpanel for webhotell for Linux- og UNIX-systemer basert på den velkjente Open Source-nettbasen
Skjerm er et program som tillater flere bruk av terminalsesjoner i ett vindu. Dette lar deg simulere flere terminalvinduer der det ma
Introduksjon Logrotate er et Linux-verktøy som forenkler administrasjonen av loggfiler. Den kjører vanligvis en gang om dagen via en cron-jobb, og administrerer loggbasen
Bruker du et annet system? Docker er en applikasjon som gjør det mulig å distribuere programmer som kjøres som containere. Det ble skrevet i det populære Go-programmet
Hva er Dirty Cow (CVE-2016-5195)? Dirty Cow-sårbarheten utnyttes gjennom hvordan Linux behandler kode. Det gjør det mulig for en uprivilegert bruker å gai
Å ha bare én bruker, som er root, kan være farlig. Så la oss fikse det. Vultr gir oss friheten til å gjøre som vi vil med våre brukere og våre servere
Adminer er et lett alternativ til phpMyAdmin. Til sammenligning er dens totale pakkestørrelse 400 KB, mot 4,2 MB med phpMyAdmin. I motsetning til phpMyAdmin, som
Bruker du et annet system? GoAccess er en åpen kildekode-nettlogganalysator. Du kan bruke den til analyse av logger på sanntidsbasis i enten terminalen eller
Denne artikkelen er en del av en todelt serie om installasjon og konfigurering av Nagios på Ubuntu 14.04. Del 1: Nagios Server Del 2: Oversikt over ekstern vert Nagio
Vultr-servere kan ikke distribueres med tidssonen/datoen/klokkeslettet du trenger på serveren din. Heldigvis kan vi manuelt stille inn tidssonen for å forhindre problemer
Denne artikkelen vil lede deg gjennom distribusjon av Meteor-appen din til en Vultr VPS som kjører Ubuntu 14.04. Det kan også fungere på andre Linux-distribusjoner (forsøk a
Introduksjon Linux-funksjoner er spesielle attributter i Linux-kjernen som gir prosesser og binære kjørbare spesifikke rettigheter som er normale
Noen arkitekturer med høy tilgjengelighet krever en flytende IP-adresse. Denne funksjonaliteten er tilgjengelig på Vultr-plattformen når privat nettverk har bee
Innledning Enkelte scenarier krever at du oppretter brukere med lese- og skrivetilgang til en enkelt katalog kun via FTP. Denne artikkelen vil vise deg hvordan t
Node.js-applikasjoner er populære for deres evne til å skalere. Å kjøre flere samtidige prosesser på flere servere gir lavere ventetid og større oppetid
Bruker du et annet system? LibreNMS er et fullverdig åpen kildekode-nettverksovervåkingssystem. Den bruker SNMP for å hente data fra forskjellige enheter. En variant
For DHCP-brukere kan det hende du trenger å redigere /etc/resolv.conf for å bruke andre navneservere. Deretter, etter en periode (eller etter en omstart av systemet)
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.
Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.
Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.
Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...
Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.
Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.
Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.
I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.
Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer