Подключаемся к серверу по ssh
Пакет paramiko позволяет устанавливать соединение с удаленными машинами по протоколу SSH2 и производить там все те же операции, если бы вы подключались через, например, утилиту ssh на линуксе.
Использовать модуль достаточно просто, пример основный методов на картинке выше. Кстати, интересный факт, Paramiko — это сочетание слов "параноик" и "друг" на языке эсперанто.
Устанавливается пакет привычным образом через пакетный менеджер pip. А документацию можете изучить тут.
#ssh
📶 Защита SSH-сервера и клиента. Усиление конфигурации.
• Стоит отметить, что многие ОС по умолчанию настроены на удобство работы, а не на безопасность. Поэтому в большинстве случае настройки нуждаются в усилении!
• ssh-audit — инструмент для аудита конфигурации ssh-сервера и клиента.
➡Поддержка серверов протоколов SSH1 и SSH2;
➡Анализ конфигурации SSH-клиента;
➡Распознавание устройства, программного обеспечения и операционной системы, определение компрессии;
➡Сборка обмена ключами, ключей хостов, шифрования и кодов аутентификации сообщений;
➡Вывод информации об алгоритме (с какого времени доступен, удалён/отключён, небезопасен/слаб/устарел и т. д.);
➡Вывод рекомендаций по алгоритмам (добавлять или удалять в зависимости от версии распознанного ПО);
➡Вывод информации о безопасности (связанные проблемы, список CVE и т. д.);
➡Анализ совместимости версий SSH на основе информации об алгоритмах;
➡Историческая информация из OpenSSH, Dropbear SSH и libssh;
➡Сканирование политик для обеспечения усиленной/стандартной конфигурации;
➡Работает под Linux и Windows;
➡Поддерживает Python 3.8−3.12;
➡Отсутствие зависимостей.
• Кроме утилиты командной строки, для удобства реализован веб-интерфейс, через который она запускается: https://www.ssh-audit.com. Этот сервис чем-то похож на SSL Server Test для быстрого аудита конфигурации SSL. Вместе с программой распространяются советы по улучшению конфигурации с целью повышения безопасности SSH для разных дистрибутивов Linux. Ну и в качестве дополнения не забывайте про подсказки по командам SSH (cheat sheet).
• А еще есть полезная статья с практическими примерами использования туннелей SSH. Например, там приводятся примеры удалённого выполнения команд, удалённого перехвата пакетов, копирования файлов, туннелирования SSH-трафика через сеть Tor, передачи потокового видео по SSH с помощью VLC и SFTP и др.
#SSH#ИБ
📶 Computer Networking Fundamentals.
• Каждый день тысячи людей используют SSH для подключения к серверам, домашним ПК, роутерам и смартфонам. SSH-клиенты есть для всех сколько-нибудь популярных платформ, а сервер SSH встраивают дажев умные лампочки.
• Вашему вниманию предлагается крайне наглядный разбор SSH туннелей. Уж сколько про них уже написано, но такого красиво оформленного материала вроде еще не видел.
Всем начинающим для прочтения строго обязательно.
➡️https://iximiuz.com/en/posts/ssh-tunnels/
• В дополнение: Практические примеры SSH.
➡SSH socks-прокси;
➡SSH через сеть Tor;
➡SSH к инстансу EC2;
➡Установка VPN по SSH;
➡Обратный прокси SSH;
➡Обратный SSH-туннель;
➡SSH-туннель на третий хост;
➡Прыжки по хостам с SSH и -J;
➡Двухфакторная аутентификация;
➡Копирование ключа SSH (ssh-copy-id);
➡Туннель SSH (переадресация портов);
➡Потоковое видео по SSH с помощью VLC и SFTP;
➡Удалённое выполнение команд (неинтерактивно);
➡SSH Escape для изменения переадресации портов;
➡SSH Escape для изменения переадресации портов;
➡Мультиплексирование SSH с помощью ControlPath;
➡Удалённый перехват пакетов и просмотр в Wireshark;
➡Удалённые приложения GUI с переадресацией SSH X11;
➡Удалённое копирование файлов с помощью rsync и SSH;
➡Блокировка попыток брутфорса SSH с помощью iptables;
➡Копирование локальной папки на удалённый сервер по SSH;
➡Монтирование удалённого SSH как локальной папки с SSHFS;
➡Редактирование текстовых файлов с помощью VIM через ssh/scp;
#SSH#Сети
• Очень ситуативное решение, но с полезным функционалом: ContainerSSH — инструмент, позволяющий поднимать отдельное окружение для пользователя налету, при подключении по SSH.
• Удобно, если используете для тестирования чего-либо, ну или для CTF и всего вот этого вот, где нам нужно получать заранее подготовленное, изолированное окружение при простой SSH авторизации.
➡️ Подробное описание: https://github.com/ContainerSSH
➡️ Документация: https://containerssh.io/v0.5/reference/
#SSH#Tools