Πώς να ελέγξει τη μηχανή Linux σας με το netstat

από Sukrit Dhandhania [[on]] 19 Ιανουαρίου 2009

Linux Ασφάλεια

Το Netstat είναι ένα εξαιρετικά χρήσιμο εργαλείο γραμμών εντολής Linux που επιτρέπει σε σας για να ελέγξει ποια υπηρεσία συνδέει με έναν λιμένα στη μηχανή σας. Είναι πολύ χρήσιμο να αναλύσει τι συμβαίνει στη μηχανή σας όταν αντιμετωπίζετε ή προσπαθείτε να αποτρέψετε μια επίθεση σε την. Μπορείτε να βρείτε τις πληροφορίες όπως πόση σύνδεση γίνεται σε έναν λιμένα, από τον οποίο η IP εξετάζει αυτές τις συνδέσεις προέρχεται, και πολύ περισσότερο. Τα σκάφη Netstat με τις περισσότερες διανομές Linux έτσι αυτό πρέπει ήδη να εγκατασταθούν σε δικοί σας.

Προωθήστε ένα τερματικό κοχυλιών στη μηχανή σας και τρέξτε την ακόλουθη εντολή:

# netstat - μυρμήγκι
Ενεργές συνδέσεις με το Διαδίκτυο (κεντρικοί υπολογιστές και καθιερωμένος)
Τοπική διεύθυνση στέλνω-q Proto recv-q Ξένη διεύθυνση Κράτος
TCP 0 0:: ffff: 192.168.1.19: 80 :: ffff: 192.168.1.240: 63049 TIME_WAIT
TCP 0 0:: ffff: 192.168.0.19: 80 :: ffff: 192.168.1.240: 62793 TIME_WAIT
TCP 0 0:: ffff: 192.168.1.19: 80 :: ffff: 192.168.1.240: 62795 TIME_WAIT

Η παραγωγή θα είναι πιθανότατα πολύ μακροχρόνια. Έδωσα μόλις ένα στιγμιότυπο της παραγωγής ανωτέρω. Δεδομένου ότι να δείτε στα στοιχεία ανωτέρω υπάρχει μια σύνδεση που γίνονται μπορείτε από το 192.168.1.240 στο λιμένα 80 του κεντρικού υπολογιστή μου που χρησιμοποιεί το πρωτόκολλο TCP και η σύνδεση σε μια κατάσταση TIME_WAIT. Έξω βαλμένη ότι παίρνετε για τον κεντρικό υπολογιστή σας θα έχει τις πληροφορίες για όλους τους λιμένες στη μηχανή σας, όχι μόνο λιμένας 80.

Το πρώτο πράγμα εσείς συνειδητοποιεί είναι ότι μια παραγωγή αυτός ο μεγάλος δεν είναι χρήσιμος πάρα πολλή. Έτσι το οργανώστε λίγο. Εδώ είναι μερικά τεχνάσματα Ι χρήση για να αναλύσουν τη φύση του παραγωγής των συνδέσεων από τον κεντρικό υπολογιστή μου. το πρώτο πράγμα που κάνω είμαι υπολογίζω που οι υπηρεσίες εγώ θέλουν να αναλύσουν. Συνήθως είναι λιμένας 80 όπως αυτός είναι ο λιμένας προεπιλογής για τον κεντρικό υπολογιστή δικτύου που τρέχει επάνω, και λιμένας 3306 που είναι ο λιμένας προεπιλογής για MySQL για να τρέξει επάνω. Έτσι χρησιμοποιώ την ακόλουθη ερώτηση που βλέπει τι συμβαίνει στο λιμένα 80:

# netstat - μυρμήγκι | grep 80

Πάλι παίρνω το μεγάλο κατάλογο συνδέσεων, μικρότερο από τον πρώτο, αλλά ακόμα πάρα πολύ μεγάλο στον έλεγχο. Έτσι χρησιμοποιώ τη «WC - εντολή λ» για να μετρήσω τον αριθμό γραμμών στην παραγωγή που βλέπει περίπου πόσες συνδέσεις έχω στο λιμένα μου 80:

# netstat - μυρμήγκι | grep 80 | WC - λ
625

Και έπειτα κάνω το ίδιο πράγμα για MySQL:

# netstat - μυρμήγκι | grep 3306 | WC - λ
61

Now, if I want to get a complete picture of what’s going on on my server in terms of the nature of connections here’s what I do:

# netstat -ant | awk ‘{print $6}’ | sort | uniq -c | sort -n

1 established)
1 Foreign
4 FIN_WAIT2
8 LISTEN
16 CLOSE_WAIT
134 ESTABLISHED
409 TIME_WAIT

This tells me how many connections of different types of state I have on my machine. I can run a similar command to see a complete picture of the state of all the connections made to my web server:

netstat -ant | grep 80 | awk ‘{print $6}’ | sort | uniq -c | sort -n

1 FIN_WAIT1
4 LISTEN
6 FIN_WAIT2
17 CLOSE_WAIT
94 ESTABLISHED
534 TIME_WAIT

You can perform a lot more complex things using Netstat along with other Linux command line tools. It can be helpful to be familiar with some tricks to get this kind of information using Netstat, particularly when you are facing an attack on your server.

Related Posts:
  • How to monitor your Internet bandwidth usage in Windows
  • How to monitor your Mac laptop’s battery health
  • How to use dstat to monitor your Linux/UNIX server
  • How to set the date on your Linux machine
  • How to monitor your Internet bandwidth usage in OS X
  • Get Simple Help tutorials just like this one in your email inbox every day - for free! Just enter your email address below:

    You can always opt out of this email subscription at any time.


    Bookmark and Share

    { 0 comments… add one now }

    Leave a Comment

    You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>