Пользователь, связанный с сокетом

Пользователь, связанный с сокетом

Я использую ss -pдля просмотра информации о сокетах TCP. Но информация о процессе не выводится для некоторых сокетов. Ниже:

$ ss -p4
State  Recv-Q  Send-Q  Local Address:Port   Peer Address:Port
ESTAB  0       0       10.146.18.213:50368  199.7.59.72:http

Но с помощью sudo я могу увидеть информацию о процессе:

$ sudo ss -p4
State  Recv-Q  Send-Q  Local Address:Port   Peer Address:Port
ESTAB  0       0       10.146.18.213:50368  199.7.59.72:http      users:(("sshd",473,18))

Без netstat -netroot я могу видеть пользователя:

$ netstat -net
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       User       Inode
tcp        0      0 10.146.18.213:50368         199.7.59.72:80              ESTABLISHED 222        3693189

Мой идентификатор пользователя — 222:

$ id -u
222

Но ss показывает информацию о процессе только с правами root.

У меня есть вопросы:

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

решение1

Я бы сказал, что ваш "sudo ss" показывает соединение, относящееся к пользователю sshd, в то время как "netstat -net" — к вашему собственному пользователю. Вот почему версия netstat не требует sudo для выяснения деталей, касающихся сокета.

Вы ss -eтакже можете использовать его для получения UID.

Связанный контент