Как да проверя за отворени портове в Linux
Когато отстранявате проблеми в мрежата на Linux или търсите начини за подобряване на сигурността на вашата Linux машина, ще трябва да знаете дали и кои пристанища са отворени. В тази статия ще разгледаме различни начини за изписване или показване на отворени портове в Linux.
Какво е пристанище?
Портът е 16-битов номер (от 0 до 65535), който помага да се идентифицира дадено приложение или процес в операционна система Linux (Unix). Портът различава едно приложение от друго в система Linux.
По-долу са различните категории пристанища:
- 0 - 1023 - Препратени към известни портове
- 1024 - 49151 - Препратен към регистрирани портове
- 49152 - 65535 - Препратки към динамични портове
Като използвате следната команда, на вашия терминал се показва списък с приложения и портове:
котка / и т.н. / услуги
TCP : TCP е протокол за управление на предаването. Това е най-често използваният протокол в Интернет. TCP не е само еднопосочна комуникация, а по-скоро изпраща пакети обратно, за да потвърди, че е получила вашите пакети.
UDP : известен също като User Datagram Protocol. Това е алтернативен комуникационен протокол към TCP. Протоколът UDP работи подобно на TCP. Въпреки това той игнорира всички неща за проверка на грешки. UDP е необходима, когато скоростта е желателна и не е необходима корекция на грешките.
SOCKETS : Socket позволява комуникация от два различни процеса на една и съща или различни машини.
Нека да разгледаме различните начини да изброим отворен порт в Linux.
1. Netstat
В този метод ще използваме командата netstat -atu
да проверим дали има отворени портове в Linux.
Използвахме флаговете -a
, -t
и -u
за netstat.
- -a : показва всички гнезда
- -t : показва TCP връзки
- -u : показва UDP връзки
Можете също така да добавите флага -p
да покажете свързано PID на името на процеса или програмата.
За да се показват само UDP портове, можете да използвате следната команда:
netstat -vaun
Също така можете да използвате следната команда за търсене на TCP портове:
netstat -vatn
2. lsof
Вместо да използваме netstat, можем да използваме командата lsof
за показване на отворени портове в Linux:
lsof -i
Следната команда може да помогне за показването на отворени гнезда:
lsof -n -P | grep LISTEN
Също така можете да използвате командата по-долу, за да изброите всички TCP връзки:
lsof -i tcp
Освен това можете да използвате следната команда за UDP връзки:
lsof -i udp
3. Команда за мрежово картографиране
В този метод ще използваме nmap
за откриване на отворения порт на вашата система. Можем да използваме следната команда за показване на TCP портови връзки:
nmap -sT -O localhost
И накрая, за да покажем връзките с UDP портове, можем да използваме следната команда:
nmap -sU localhost
заключение
Що се отнася до сигурността на компютъра ви с Linux, първото нещо, което трябва да направите, е да затворите всички ненужни пристанища, за да предотвратите външния достъп. С методите, изброени по-горе, ще можете лесно да проверявате за отворени портове на Linux система и да определяте кои пристанища трябва да бъдат затворени или да останат отворени.