40 полезных автотоваров с Aliexpress, которые упростят жизнь любому автовладельцу #3
Πίνακας περιεχομένων:
- Τι είναι το Open Port
- Ελέγξτε τις ανοιχτές θύρες με το
nmap
- Ελέγξτε τις ανοιχτές θύρες με το
netcat
- Ελέγξτε τις ανοιχτές θύρες χρησιμοποιώντας τη συσκευή Pseudo Bash
- συμπέρασμα
Είτε αντιμετωπίζετε προβλήματα σύνδεσης με το δίκτυο είτε ρυθμίζετε ένα τείχος προστασίας ένα από τα πρώτα πράγματα που πρέπει να ελέγξετε είναι αυτό που οι θύρες ανοίγουν πραγματικά στο σύστημά σας.
Αυτό το άρθρο περιγράφει διάφορες προσεγγίσεις για να μάθετε ποιες θύρες ανοίγουν προς τα έξω στο σύστημα Linux.
Τι είναι το Open Port
Μια θύρα ακρόασης είναι μια θύρα δικτύου στην οποία ακούει μια εφαρμογή. Μπορείτε να πάρετε μια λίστα με τις θύρες ακρόασης στο σύστημά σας ζητώντας τη στοίβα δικτύου με εντολές όπως
ss
,
netstat
ή
lsof
. Κάθε θύρα ακρόασης μπορεί να ανοίξει ή να κλείσει (φιλτραριστεί) χρησιμοποιώντας ένα τείχος προστασίας.
Σε γενικές γραμμές, μια ανοικτή θύρα είναι μια θύρα δικτύου που δέχεται εισερχόμενα πακέτα από απομακρυσμένες τοποθεσίες.
Για παράδειγμα, εάν εκτελείτε διακομιστή ιστού που ακούει στις θύρες
80
και
443
και οι θύρες αυτές είναι ανοιχτές στο τείχος προστασίας, οποιοσδήποτε (εκτός από τα αποκλεισμένα ips) θα έχει πρόσβαση σε ιστότοπους που φιλοξενούνται στον διακομιστή ιστού σας χρησιμοποιώντας το πρόγραμμα περιήγησης. Στην περίπτωση αυτή, και τα
80
και τα
443
είναι ανοιχτές θύρες.
Οι ανοιχτές θύρες ενδέχεται να δημιουργούν κίνδυνο ασφαλείας καθώς κάθε ανοιχτή θύρα μπορεί να χρησιμοποιηθεί από τους εισβολείς για να εκμεταλλευτεί μια ευπάθεια ή να εκτελέσει οποιαδήποτε άλλη μορφή επιθέσεων. Θα πρέπει να εκθέσετε μόνο τις θύρες που απαιτούνται για τη λειτουργικότητα της εφαρμογής σας και να κλείσετε όλες τις άλλες θύρες.
Ελέγξτε τις ανοιχτές θύρες με το
nmap
Το Nmap είναι ένα ισχυρό εργαλείο σάρωσης δικτύου που μπορεί να σαρώσει μεμονωμένους κεντρικούς υπολογιστές και μεγάλα δίκτυα. Χρησιμοποιείται κυρίως για ελέγχους ασφαλείας και δοκιμές διείσδυσης.
Εάν είναι διαθέσιμο, το
nmap
πρέπει να είναι το πρώτο σας εργαλείο όταν πρόκειται για σάρωση λιμένων. Εκτός από την ανίχνευση θύρας, το
nmap
μπορεί επίσης να ανιχνεύσει διεύθυνση Mac, τύπο OS, εκδόσεις πυρήνα και πολλά άλλα.
Η ακόλουθη εντολή που εκδίδεται από την κονσόλα καθορίζει ποια θύρα ακούν για συνδέσεις TCP από το δίκτυο:
sudo nmap -sT -p- 10.10.8.8
Το
-sT
δηλώνει το
nmap
για τη σάρωση για θύρες TCP και
-p-
για σάρωση για όλες τις 65535 θύρες. Εάν το
-p-
δεν χρησιμοποιείται, το
nmap
θα σαρώσει μόνο 1000 θύρες.
Starting Nmap 7.60 (https://nmap.org) at 2019-07-09 23:10 CEST Nmap scan report for 10.10.8.8 Host is up (0.0012s latency). Not shown: 998 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http MAC Address: 08:00:27:05:49:23 (Oracle VirtualBox virtual NIC) Nmap done: 1 IP address (1 host up) scanned in 0.41 seconds
Η παραπάνω έξοδος δείχνει ότι μόνο οι θύρες
22
,
80
και
8069
ανοίγουν στο σύστημα στόχου.
Για να πραγματοποιήσετε σάρωση για θύρες UDP, χρησιμοποιήστε
-sU
αντί
-sT
:
sudo nmap -sU -p- 10.10.8.8
Για περισσότερες πληροφορίες, επισκεφτείτε τη σελίδα man nmap και διαβάστε για όλες τις άλλες δυνατές επιλογές αυτού του εργαλείου.
Ελέγξτε τις ανοιχτές θύρες με το
netcat
Το Netcat (ή
nc
) είναι ένα εργαλείο γραμμής εντολών που μπορεί να διαβάζει και να γράφει δεδομένα σε συνδέσεις δικτύου χρησιμοποιώντας τα πρωτόκολλα TCP ή UDP.
Με το
netcat
μπορείτε να σαρώσετε μία μόνο θύρα ή μια περιοχή θύρας.
Για παράδειγμα, για να σαρώσετε για ανοιχτές θύρες TCP σε απομακρυσμένο μηχάνημα με διεύθυνση IP
10.10.8.8
στην περιοχή
20-80
, θα χρησιμοποιούσατε την ακόλουθη εντολή:
nc -z -v 10.10.8.8 20-80
Η επιλογή
-z
λέει στον
nc
να σαρώνει μόνο για ανοιχτές θύρες, χωρίς να στέλνει δεδομένα και το
-v
είναι για πιο λεπτομερείς πληροφορίες.
Η έξοδος θα φαίνεται κάπως έτσι:
nc: connect to 10.10.8.8 port 20 (tcp) failed: Connection refused nc: connect to 10.10.8.8 port 21 (tcp) failed: Connection refused Connection to 10.10.8.8 22 port succeeded!… Connection to 10.10.8.8 80 port succeeded!
nc -z -v 10.10.8.8 20-80 2>&1 | grep succeeded
Connection to 10.10.8.8 22 port succeeded! Connection to 10.10.8.8 80 port succeeded!
Για να σαρώσετε τις θύρες UDP, περάστε την επιλογή
-u
στην εντολή
nc
:
nc -z -v -u 10.10.8.8 20-80 2>&1 | grep succeeded
Ελέγξτε τις ανοιχτές θύρες χρησιμοποιώντας τη συσκευή Pseudo Bash
Ένας άλλος τρόπος για να ελέγξετε αν μια συγκεκριμένη θύρα είναι ανοιχτή ή κλειστή είναι η χρήση της συσκευής
/dev/udp/..
Bash shell
/dev/tcp/..
ή
/dev/udp/..
Κατά την εκτέλεση μιας εντολής σε μια ψευδο-συσκευή
/dev/$PROTOCOL/$HOST/$IP
, το Bash θα ανοίξει μια σύνδεση TCP ή UDP στον καθορισμένο κεντρικό υπολογιστή στην καθορισμένη θύρα.
Η ακόλουθη εντολή if..else θα ελέγξει αν είναι ανοιχτή η θύρα
443
στο
kernel.org
:
if timeout 5 bash -c ' /dev/null' then echo "Port is open" else echo "Port is closed" fi
if timeout 5 bash -c ' /dev/null' then echo "Port is open" else echo "Port is closed" fi
Port is open
Πώς λειτουργεί ο κώδικας παραπάνω;
Το προεπιλεγμένο χρονικό όριο κατά τη σύνδεση σε μια θύρα χρησιμοποιώντας μια συσκευή ψευδο είναι τεράστια, οπότε χρησιμοποιούμε την εντολή
timeout
για να σκοτώσουμε την εντολή δοκιμής μετά από 5 δευτερόλεπτα. Εάν η σύνδεση είναι εγκατεστημένη στη θύρα
kernel.org
443
η εντολή δοκιμής θα επανέλθει στην πραγματικότητα.
Μπορείτε επίσης να χρησιμοποιήσετε τον βρόχο for για να ελέγξετε για μια περιοχή θύρας:
for PORT in {20..80}; do timeout 1 bash -c " /dev/null" && echo "port $PORT is open" done
for PORT in {20..80}; do timeout 1 bash -c " /dev/null" && echo "port $PORT is open" done
Η έξοδος θα φαίνεται κάπως έτσι:
port 22 is open port 80 is open
συμπέρασμα
Σας έχουμε δείξει πολλά εργαλεία που μπορείτε να χρησιμοποιήσετε για να σαρώσετε για ανοιχτές θύρες. Υπάρχουν επίσης άλλα βοηθητικά προγράμματα και μέθοδοι για τον έλεγχο για ανοιχτές θύρες, για παράδειγμα, μπορείτε να χρησιμοποιήσετε την υπομονάδα
socket
Python,
curl
,
telnet
ή
wget
.
Η Microsoft ξεκίνησε το πρόγραμμα Songsmith μόνο για Windows νωρίτερα αυτό το μήνα. Το λογισμικό σας επιτρέπει να δημιουργείτε μουσικά συνοδεία για να ταιριάζει με τη φωνή σας. Σε μια διαφήμιση μόνο στο Web για το νέο λογισμικό, οι άνθρωποι που συνθέτουν μουσική χρησιμοποιούν ένα MacBook Pro. Ρίξτε μια ματιά στο εμπορικό τον εαυτό σας και μπορείτε να δείτε από το σώμα αλουμινίου του φορητού υπολογιστή και τις θύρες στην αριστερή πλευρά του φορητού υπολογιστή ότι είναι ένα MacBook Pro. Η κάλυψη τ
Ρίξτε μια ματιά σε αυτές τις θύρες MacBook Pro και συγκρίνετε τις με το laptop που παρουσιάζεται στη διαφήμιση της Microsoft.
Η συσκευασία για τον σταθμό βάσης Apricorn Aegis NetDock ($ 89, από τις 7/6/2010) σημαίνει μόνο ότι υπάρχει οπτική μονάδα σανίδα. Αλλά μην ξεγελιέστε: όχι μόνο υπάρχει ένας - ένας καυστήρας DVD TEAC DV-W28S-V 8X σε αυτή την περίπτωση - αλλά τέσσερις θύρες USB 2.0 επίσης. Δύο από αυτές τις θύρες παραμένουν τροφοδοτούμενες ακόμη και όταν η μονάδα δεν είναι συνδεδεμένη με υπολογιστή, ώστε να μπορείτε να φορτίζετε μαζί τους κινητά τηλέφωνα και άλλες κινητές συσκευές. Αυτή η ευελιξία βοηθάει το NetDo
Η μονάδα δοκιμής μας ήρθε επίσης με ένα σκληρό δίσκο 500GB μέσα (μια επιλογή $ 189 από τις 7/6 / 2010). Εξοικονομήστε μερικά δολάρια - ή επιλέξτε τη δική σας χωρητικότητα - αγοράζοντας τη μονάδα οπτικών μονάδων και προσθέτοντας μια μονάδα δίσκου 2,5 ιντσών αργότερα. Η εγκατάσταση ενός τέτοιου δίσκου είναι αρκετά απλή: Το NetDock χωρίζεται με την αφαίρεση της μονής βίδας. Σύρετε τη μονάδα δίσκου στη θύρα SATA, στερεώστε την με δύο βίδες, επανασυναρμολογήστε και είστε καλός.
Πώς να ελέγξετε για τις θύρες ακρόασης στο linux (θύρες σε χρήση)
Αυτό το άρθρο εξηγεί πώς μπορείτε να βρείτε τις θύρες που χρησιμοποιούνται και ποιες υπηρεσίες ακούνε σε ποιες θύρες χρησιμοποιούνται οι εντολές netstat, ss και lsof. Οι οδηγίες ισχύουν για όλα τα λειτουργικά συστήματα που βασίζονται σε Linux και Unix, όπως macOS.