Netcat jest jednym z potężnych narzędzi sieciowych, narzędzi bezpieczeństwa lub narzędzia do monitorowania sieci. Działa jak polecenie cat przez sieć. Jest nawet uważany za szwajcarski nóż wojskowy narzędzi sieciowych.,
jest zwykle używany z następujących powodów:
- operacja związana z gniazdami TCP, UDP lub domenami UNIKSOWYMI
- skanowanie portów
- nasłuchiwanie portów
- przekierowanie portów
- otwieranie połączeń zdalnych
- Odczyt/Zapis danych przez sieć
- debugowanie sieci
- testowanie demonów sieci
- proste proxy TCP
- polecenie Socks lub HTTP Proxy dla SSH
zostało zaprojektowane z myślą o tym, że powinno być elastycznym narzędziem „back-end”, które może być używane bezpośrednio lub napędzane przez dowolny inny program.,
instalowanie narzędzia netcat (nc) Process Monitoring Tool
aby zainstalować narzędzie Netcat użyj następujących poleceń zgodnie z dystrybucją Linuksa.
W przypadku Debiana/Ubuntu
$sudo apt-get install netcat
W przypadku CentOS/RHEL
$yum install nc
W przypadku Fedory 22+ i RHEL 8
$dnf install nc
praca z netcat security tool
1. Aby rozpocząć nasłuchiwanie na porcie, Najpierw otwórz 2 okna terminala.,
Terminal 1 do nasłuchiwania
$nc -l -p 1234
Terminal 2 wysyła żądanie
$nc 127.0.0.1 1234
Uwaga: tutaj numer portu to 1234, a domyślnie hostem jest localhost.
nie wyświetli niczego, ale zacznie nasłuchiwać portu 1234 na localhost z terminala 1. Wszystko, co zostanie wprowadzone w Terminalu 2, zostanie również odzwierciedlone w Terminalu 1, co potwierdzi, że połączenie zostało pomyślnie nawiązane.
2. Aby przesłać dane. Otwórz 2 okna terminala.,
Terminal 1 do nasłuchiwania
$nc -l -p 1234 >output.txt
Terminal 2 do wysyłania żądania
$echo "GeeksforGeeks" >input.txt$nc 127.0.0.1 1234 <input.txt
Uwaga: tutaj numer portu to 1234, a domyślnie hostem jest localhost. Wyśle dane wejściowe.dane pliku txt z Terminala 2 do wyjścia.plik txt w Terminalu 1.
3. Aby wykonać skanowanie portów. Wprowadź następujące polecenie na terminalu.,
skanowanie pojedynczego portu
$netcat -z -v 127.0.0.1 1234
skanowanie wielu portów
$nc -z -v 127.0.0.1 1234 1235
skanowanie zakresu portów
$nc -z -v 127.0.0.1 1233-1240
Uwaga: tutaj numery portów to 1234, 1235, 1233 i 1240 możesz je zmienić według swoich potrzeb. Wyświetli numer portu ze statusem (otwarty lub nie).
4. Aby wysłać żądanie HTTP
$printf „GET /NC.1 HTTPs / 1.1\r \ nHost: www.geeksforgeeks.org\r\n\r\n ” / nc www.geeksforgeeks.org 80
Uwaga: tutaj znajduje się strona www.geeksfrogeeks.,org, możesz wybrać dowolny. Wyśle żądanie HTTP do www.geeksfrogeeks.org.
5. Aby opóźnić interwał dla wysyłanych linii. Otwórz terminal 2, Jak pokazano poniżej:
Terminal 1 do nasłuchiwania
$nc -l -p 1234
Terminal 2 wysyłanie żądania