Назад | Перейти на главную страницу

Netstat показывает несколько подключений для входа в ssh

Я подключаюсь к своему серверу по ssh. Я единственный человек, у которого есть доступ к серверу. После подключения по ssh я запускаю следующую команду:

sudo netstat -tupn

Вывод включает следующие две строки:

Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address
tcp        0      0 MY.SERVER.IP.ADDRESS:22       MY.HOME.IP.ADDRESS:54886     ESTABLISHED 18677/0
tcp        0    324 MY.SERVER.IP.ADDRESS:22       MY.HOME.IP.ADDRESS:55096     ESTABLISHED 18843/1

Основываясь на моих ограниченных знаниях, похоже, что эти две строки вывода связаны с моим ssh-соединением. Я считаю, что это правда, потому что это порт 22, а внешний адрес - это мой домашний IP-адрес.

Я пытаюсь понять, что представляют собой эти 2 строки. Почему для моего единственного ssh-соединения показаны два соединения?

Кроме того, может ли netstat быть хорошим инструментом, чтобы узнать, получил ли кто-то несанкционированный доступ к моему серверу? Если бы кто-то это сделал, увижу ли я их соединение в выводе netstat?

Линии показывают 2 активных (ESTABLISHED состояние) ssh-соединения с вашего домашнего компьютера (возможно, с scp операция в процессе или ssh сеанс с другого терминала или какой-то фоновой оболочки?).

Строки включают PID для процессов, которым они соответствуют в последнем столбце, 18677 и 18843 в твоем случае. Вы можете проверить, какие это процессы (ps -ef | grep <PID>). Для обычных ssh-соединений они будут sshd процессы.

Вы также можете узнать, каким PID на вашем домашнем компьютере они соответствуют, запустив sudo netstat -tupn на своем домашнем компьютере вы увидите что-то в этом роде (обратите внимание на совпадающие значения IP_ADDRESS: PORT_NUM, но с перевернутыми столбцами локального и внешнего / удаленного адресов):

Proto Recv-Q Send-Q Local Address                  Foreign Address             State       PID/...

tcp        0      0 MY.HOME.IP.ADDRESS:54886       MY.SERVER.IP.ADDRESS:22     ESTABLISHED PID1/...
tcp        0      0 MY.HOME.IP.ADDRESS:55096       MY.SERVER.IP.ADDRESS:22     ESTABLISHED PID2/...

Затем из соответствующих pid-пакетов вы можете найти соответствующие процессы, их родителей и т. Д.

Да, netstat это хороший инструмент для использования. Пока неавторизованный доступ не сможет каким-то образом обойти способ, которым netstat работает (что ИМХО возможно, но маловероятно для обычных атак), вы должны иметь возможность видеть такие активные соединения и, возможно, даже следы тех, которые завершаются или совсем недавно завершились (состояния вроде TIME_WAIT или CLOSE_WAIT).