Узнать кто подключался по ssh
Перейти к содержимому

Узнать кто подключался по ssh

  • автор:

Форум русскоязычного сообщества Ubuntu

Страница сгенерирована за 0.059 секунд. Запросов: 25.

  • Сайт
  • Об Ubuntu
  • Скачать Ubuntu
  • Семейство Ubuntu
  • Новости
  • Форум
  • Помощь
  • Правила
  • Документация
  • Пользовательская документация
  • Официальная документация
  • Семейство Ubuntu
  • Материалы для загрузки
  • Совместимость с оборудованием
  • RSS лента
  • Сообщество
  • Наши проекты
  • Местные сообщества
  • Перевод Ubuntu
  • Тестирование
  • RSS лента

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

Как узнать, кто подключился по SSH

Иногда становится интересно: кто же сейчас копается на сервере, а главное – откуда (с каких ip-адресов). Стандартный метод подключения к серверу – SSH. Его то мы и будем искать среди наших коннектов. Если у вас современный Linux-дистрибутив, скорее всего, для работы сокетами у вас используется утилита ss. Так, к примеру, вы можете посмотреть все входящие и исходящие ssh-соединения:

ss -o state established '( dport = :ssh or sport = :ssh )'

Если же в ваших руках сервер-динозавр: стабильный, но не свежий, скорее всего, у вас будет использоваться утилита netstat. Так вы сможете получить всё те же входящие и исходящие ssh-соединения:

netstat -tnpa | grep 'ESTABLISHED.*sshd'

И совсем уже экзотический вариант – воспользоваться утилитой lsof, которая отвечает уже за открытые файловые дескрипторы. Но в Unix у нас «всё есть файл», так что и для открытых соединений сгодится:

lsof -n -a -itcp -stcp:established -c sshd

Ну и в конце концов, можно просто посмотреть залогиненных пользователей командой w

Изображение Шпаргалка по командам Linux, FreeBSD и MacOS

  • Программы
  • Хаккинг и взломы
  • Терминал/Консоль
  • Linux
  • Безопасность
  • Сетевые технологии

Хаккинг и взломы

Дыры в безопасности, утечки данных и иные проблемы в информационной безопасности. Примеры и новости, связанные с проблемами в безопасности информационных систем. Художественные и документальные произведения, где используются или описываются взломы …

Фото Хаккинг и взломы

Терминал/Консоль

Команды и инструкции терминала (консоли) Linux, MacOS, Windows и прочих операционных систем. Трюки и особенности командных оболочек, скрипты для администрирования Unix. Программирование и скриптование Windows и Linux, тонкая настройка Macos. …

Фото Терминал/Консоль

Операционная система Linux (Линукс или Лайнакс) во многом похожая на проприетарную Unix. Линукс распространён на серверах, что означает, что изучая её вы улучшаете свой навык администрирования, DevOps и программирования. Открытая …

Фото Linux

Безопасность

Заметки об обеспечении безопасности в информационных системах. Настройка брендмауэров (фаерволов) на операционных системах Linux, Windows, MacOS, Unix. Новости об интересных уязвимостях в системах, мониторинге использования ресурсов, алертинге подозрительных действий. Работа …

Фото Безопасность

Сетевые технологии

Настройки сетевых подключений в различных операционных системах. Сетевые протоколы и клиентские/серверные приложения для работы по ним. Настройка серверов и приложений для оптимальной работы. Тюнинг приложений, запуск и настройка серверов, анализ …

Фото Сетевые технологии

Также может быть вам интересно:

  • Кошка бросила котят – OpenSource всё виноват
  • Трюки терминала Bash
  • Как получить дерево директорий на Bash одним однострочником
  • Как установить PostgreSQL на Linux и создать базу и пользователя
  • Как сделать свою middleware в Django (с примерами)

как узнать ip входившего по ssh?

где в системе он мог засветиться? где-то сохраняются ип адреса входивших по ssh?

amalincom
06.05.15 19:28:32 MSK

# last 
cat /var/log/auth.log 

ktk ★★★★
( 06.05.15 19:30:19 MSK )
Ответ на: комментарий от ktk 06.05.15 19:30:19 MSK

Если у злоумышленника уже есть рут, то это не поможет. Единственный вариант это ставить систему с нуля

at ★★
( 06.05.15 19:36:25 MSK )

обычно логи пишутся в /var/log/auth.log

Harald ★★★★★
( 06.05.15 19:40:09 MSK )
Ответ на: комментарий от ktk 06.05.15 19:30:19 MSK

Я думаю если его скомпрометировали, то найти будет сложновато, обычно следы за собой подчищают, хотя попробовать можно. На будущее могу посоветовать отправку сообщений на почту по логину.

pavel38 ★
( 06.05.15 19:40:27 MSK )

добавлю пять копеек про смс по логину, очень удобно.

conalex ★★★
( 06.05.15 21:25:26 MSK )
Ответ на: комментарий от conalex 06.05.15 21:25:26 MSK

а как именно? просто в .bashrc прописать скрипт, шлющий письмо/смс?

amalincom
( 06.05.15 22:09:23 MSK ) автор топика
Ответ на: комментарий от amalincom 06.05.15 22:09:23 MSK
conalex ★★★
( 06.05.15 22:15:38 MSK )
Ответ на: комментарий от at 06.05.15 19:36:25 MSK

Если у злоумышленника уже есть рут, то это не поможет. Единственный вариант это ставить систему с нуля

ну это само собой что не поможет. а вот про — «с нуля» не согласен категорически, достаточно контрольные суммы проверить и восстановить измененные файлы ну и слегка упороться по восстановлению картины проишедшего.

ktk ★★★★
( 06.05.15 22:21:38 MSK )
Ответ на: комментарий от ktk 06.05.15 22:21:38 MSK

проверка контрольных сумм покажет изменения в кротабе и исполняемые файлы в /tmp?

anonymous
( 06.05.15 22:28:21 MSK )
Ответ на: комментарий от anonymous 06.05.15 22:28:21 MSK

etc как и все конфиги по уму нужно в mercurial/git и т.д хранить.

/tmp, /var/tmp и т.д. вычищать, на остальные не связанные с бинарниками каталоги делать noexec.

ktk ★★★★
( 06.05.15 22:45:00 MSK )
Ответ на: комментарий от ktk 06.05.15 22:21:38 MSK

Мне проще переставить систему, чем считать контрольные суммы и т.д. Конфиги готовые, надо просто поставить пакеты из заранее известного списка

at ★★
( 07.05.15 20:27:29 MSK )
Ответ на: комментарий от at 07.05.15 20:27:29 MSK

Мне проще переставить систему, чем считать контрольные суммы и т.д. Конфиги готовые, надо просто поставить пакеты из заранее известного списка

ну да. случаи бывают разные, твой вариант тоже имеет право на жизнь.

ktk ★★★★
( 07.05.15 21:02:51 MSK )
14 июля 2015 г.

Файл /var/log/wtmp хранит информацию по сеансам, если его не поправил злоумышленник.

Прочитать его можно например таким скриптом:

#!/bin/bash perl -we ' @type=("Empty","Run Lvl","Boot","New Time","Old Time","Init","Login","Normal","Term","Account"); $recs = ""; while (<>) ; foreach (split(/(.)/s,$recs)) )(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)/s; if (defined $line && $line =~ /\w/) >print"\n" ' < /var/log/wtmp 

Актуально запретить вход по ssh от имени root, а команды запускать используя sudo.

Как посмотреть текущие SSH подключения?

хотя показаны две строки, но, фактически, это одно соединение к локальному компьютеру ( 10.0.0.1 , порт 22 ( ssh )) с удалённого ( 10.0.0.2 , порт 59964). просто процесс sshd, выполняющийся от имени root, создал дочерний процесс, но уже от имени alice.

пояснения (см. $ man lsof ):

  • -n — не пытаться преобразовывать ip-адреса в доменные имена (может значительно ускорить работу)
  • -a — применить логическую операцию «и» («and»)
  • -itcp — показать tcp-сокеты
  • -stcp:established — показать tcp-сокеты, находящиеся в состоянии «established»
  • -c sshd — показать процессы, запущенные из бинарных файлов, имена которых начинаются строкой sshd

почему два фильтры -itcp и -c sshd вместо одного -itcp:22 ?

потому что в этом случае в вывод попадут и процессы ssh, запущенные локально и подключившиеся к 22-ым портам каких-нибудь машин. к тому же, в случае, если ваш sshd слушает и/или порт(ы), отличный(е) от 22-го, то такие соединения просто не попадут в вывод.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *