Скажем, у меня есть SSH-сервер с включенной переадресацией портов. Для пользователя довольно просто установить SSH-соединение и перенаправить трафик BitTorrent или другой незаконный или оскорбительный трафик по нему. Как я могу настроить ведение журнала, чтобы записать, какой порт перенаправляют пользователи?
ssh
ssh-tunnel
interfect
источник
источник
Ответы:
Я использовал патч на этой веб-странице (слегка измененный) http://blog.rootshell.be/2009/03/01/keep-an-eye-on-ssh-forwarding/ для регистрации порта ssh.
источник
Я задаю здесь вопрос: как процесс хоста SSH может определить, какие порты были перенаправлены клиентом (-R, а не -L), чтобы найти более элегантный способ сделать то же самое.
Тем не менее, поскольку это не выглядит, как есть лучший способ, я делаю это с
lsof
:sudo lsof -aPni@127.0.0.1 -Fn -p99999 | grep "^n" | grep -v '\->' | awk -F: '{print $NF}' | sort | uniq
99999 - это PID
sshd
обработки интересующего вас соединения.Есть несколько способов использовать этот фрагмент. Либо у вас есть длительный процесс, который отслеживает новые экземпляры
sshd
и затем анализирует их, используя вышеупомянутую команду, либо вы добавляете к префиксам все.ssh/authorized_keys
записи с помощью специальной команды, которая делает это, регистрирует ее где-то, а затемexec
исходную предполагаемую команду (SSH_ORIGINAL_COMMAND
или оболочку входа в большинстве случаев). случаев).источник
Вы можете попробовать Wireshark . Я, честно говоря, не уверен, что он будет делать именно то, что вы хотите, но он, безусловно, может определить, что пользователи делают в сети. Spiceworks - еще один бесплатный вариант
источник
netstat
,ps
И некоторые умные и greping резка. Netstat может дать вам идентификаторы программ, а ps может дать вам пользователя.тем временем в другой части консоли
Конечно, вы не будете знать порт, указанный в grep, grep здесь для ограничения моего вывода
а также
и вуаля! вы знаете, что пользователь "пользователь" перенаправляет порт 12345 с помощью sshd
скрипт и cron что-то с помощью этого
источник