Можно использовать httpry или Justniffer, чтобы сделать это.
httpry
доступно, например, через хранилище пакетов Fedora.
Вызов в качестве примера:
# httpry -i em1
(где em1
обозначает название сетевого интерфейса),
Пример произвел:
2013-09-30 21:35:20 192.168.0.1 198.252.206.16 > POST unix.stackexchange.com /posts/6281/editor-heartbeat/edit HTTP/1.1
2013-09-30 21:35:20 198.252.206.16 192.168.0.1 < HTTP/1.1 200 OK
2013-09-30 21:35:49 192.168.0.1 198.252.206.16 > POST unix.stackexchange.com /posts/validate-body HTTP/1.1
2013-09-30 21:35:49 198.252.206.16 192.168.0.1 < HTTP/1.1 200 OK
2013-09-30 21:33:33 192.168.0.1 92.197.129.26 > GET cdn4.spiegel.de /images/image-551203-breitwandaufmacher-fgoe.jpg HTTP/1.1
(вывод немного сокращен),
Для основной операции — рабочих команд как корень — самое видимое различие между sudo и su - то, что sudo требует пароля вызывающего абонента (т.е. Ваш пароль), тогда как su требует пароля целевого пользователя (т.е. пароль root). Последствия безопасности были обсуждены экстенсивно в предыдущем вопросе: Который является самым безопасным способом получить права пользователя root: sudo, su или вход в систему?.
Sudo имеет дополнительные функции вне su's. В частности, после того как у Вас есть пароль пользователя, можно выполнить любую команду как тот пользователь. С другой стороны, sudo может быть настроен так, чтобы пользователь, вызывающий его, мог только выполнить определенные команды как некоторый другой пользователь. Это возможно, потому что sudo не требует никакой аутентификации (кроме, возможно, подтверждения, что Вы - Вы путем ввода пароля — но это тонко отличается от аутентификации пользователя для задачи).
Вы изменяете sudo конфигурацию путем выполнения visudo
управляйте как корень (никогда не редактируют конфигурацию непосредственно). Удостоверьтесь переменная среды EDITOR
или VISUAL
установлен на Вашего любимого редактора, или можно получить незнакомого редактора. sudoers
страница справочника является немного краткой, но имеет примеры. Позволить пользователю bob
работать /bin/foo
(с любым количеством аргументов) и /bin/bar --safe
(но не с любым другим аргументом) как root
, используйте следующие строки:
bob ALL = (root) /bin/foo
bob ALL = (root) /bin/bar --safe
Самое большое различие - это с sudo
Вам не нужен пароль root для выполнения команды как корня, как Вы были бы для su
. Вам действительно нужен пароль root для добавления кого-то к sudoers
файл, но после этого что человек может выполнить все или некоторых (если Вы ограничили его) как корень, не требуя дальнейшего пароля.
Другое различие, как Вы отметили, sudo
позволяет намного более прекрасное управление точно, какие команды могут быть выполнены.
Для получения дополнительной информации формата sudoers
файл выполняется man sudoers
. Вы найдете, что примеры там разрешения только определенных команд выполняются как корень. Базовая структура каждой строки:
user_list host_list = cmd_list
cmd_list может включать детали, из которого пользователя реальному пользователю разрешают переключиться на. Например, Вы могли бы позволить веб-мастеру переключаться на wwwroot, чтобы перезапустить апача, но не базироваться. Это может также включать другие опции такой как, требуется ли пользовательский пароль прежде, чем переключиться (это - значение по умолчанию).
Строка в качестве примера могла бы быть:
joe ALL=(ALL) ALL
что означает: позвольте joe выполнить любую команду на любом хосте как любой пользователь. Более трудная строка могла бы быть:
joe ALL=(operator) /usr/local/ops/
что означает: позвольте joe выполнить любую команду в/usr/local/ops каталоге как пользователь "оператор".
Существует много примеров в конце sudoers страницы справочника.
Необходимо отредактировать /etc/sudoers
с командой visudo
. Это проверяет, что файл законен и помогает предотвратить Вас от случайно повреждения его.
sudoers
файл настраивается. Это может быть настроено, чтобы потребовать, чтобы пароль или набор до не потребовали пароля.
– Jonathan M Davis
14.04.2011, 03:40
В дополнение к другим ответам sudo предоставляет регистрирующиеся услуги, таким образом, можно отслеживать то, какие команды были выполнены и кто. Это не в целях безопасности, так как злонамеренный пользователь, который получает sudo доступ, может вытереть журнал. Это очень полезно, хотя выяснить точно, что Вы или некоторый другой администратор сделали смутный следивший в 2:00 на прошлой неделе.
sudo
потрясающее изобретение – tshepang 14.04.2011, 01:47apache2ctl graceful
Я думаю, что предпочел бы разрезать запястья в длину и заканчивать его. голубятня – Shadur 14.04.2011, 07:33