Как искать файл в списке установленных файлов каждого пакета, установленного в системе

Я не могу дать вам ни одной команды, но есть несколько команд, которые позволят вам найти клиента. Проблема в том, как OpenSSH создает процессы. Процесс, владеющий прослушивающим сокетом 39963, является дочерним по отношению к процессу, владеющему SSH-соединением. Таким образом, у них будут разные PID. В вашем примере вам нужно найти родительский процесс для 1074. Следующее работает для сервера OpenSSH в Ubuntu. Я не могу гарантировать, что каждый дистрибутив будет вести себя одинаково.

Начните с поиска PID для клиентского соединения. Используйте grepдля фильтрации вывода netstat.

$ sudo netstat -ptln | grep 39963
tcp        0      0 127.0.0.1:39963         0.0.0.0:*               LISTEN      21921/sshd: philip@
tcp6       0      0 ::1:39963               :::*                    LISTEN      21921/sshd: philip@

Процесс прослушивания здесь 21921. Вам нужен его родитель:

$ ps -ef | grep 21921
philip   21921 21919  0 11:01 ?        00:00:00 sshd: philip@pts/1
philip   21924 21921  0 11:01 pts/1    00:00:00 -bash
philip   22844 20309  0 11:15 pts/0    00:00:00 grep --color=auto 21921

# Or try this:

$ ps -ef | awk '$2 == 21921 { print $3 }'
21919

Родителем 21921здесь является 21919. Теперь вернемся к netstat, чтобы найти клиента :

.
$ sudo netstat -ptn | grep 21919
tcp        0      0 192.168.1.36:22          192.168.1.10:54425   ESTABLISHED 21919/sshd: philip

Это показывает, что удаленный IP-адрес192.168.1.10

0
07.10.2020, 07:15
0 ответов

Теги

Похожие вопросы