Невинные SSH'алости в сетях

Andrushock

Xakep, номер #057, стр. 057-078-4


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

Для включения поддержки аутентификационных модулей придется снова обратиться к /etc/ssh/sshd_config:

# vi /etc/ssh/sshd_config

PAMAuthenticationViaKbdInt yes

Примеры pam-файлов, rc и init-скриптов для FreeBSD, дистрибутивов Suse, Caldera, Red Hat Linux можно найти в каталоге openssh-3.6.1p2/contrib. Чтобы не повторяться, приведу содержимое моего pam-конфига для sshd в Gentoo Linux:

# vi /etc/pam.d/sshd

#%PAM-1.0

auth required pam_stack.so service=system-auth

auth required pam_shells.so

auth required pam_nologin.so

account required pam_stack.so service=system-auth

password required pam_stack.so service=system-auth

session required pam_stack.so service=system-auth

Как видишь, PAM представляет собой обычные программные библиотеки. Модуль auth выполняет проверку наличия пользователя в системе и сверяет регистрационные данные, модуль account контролирует распределение ресурсов системы для каждого бюджета, журналированием событий занимается модуль session, а за введенный пользователем пароль отвечает модуль password.

<SSH-туннелирование>

Одной из самых интересных возможностей OpenSSH является перенаправление портов, с помощью которого очень удобно создавать криптованные туннели через незащищенные сети. Лучше всего это объяснить на примере. Допустим, ты только что подключился к домашней сети и решил проверить почту на недавно похаченном сервере в Нидерландах ;-). Ты ничего не знаешь о топологии этой сети, о компетентности односетчан, о присутствии перехватчиков сетевых пакетов... не сеть, а кот в мешке. Задача: необходимо обеспечить зашифрованную связь и препятствовать перехвату наших паролей и долгожданных писем.

После выполнения следующей команды на 10 минут (600/60 сек) будет создан SSH1-туннель для безопасного доступа к службе POP3 на узле hacked.box.nl:

# ssh -c blowfish -1 -4 -C -x -f -L 110:localhost:110 shocker@hacked.box.nl sleep 600

Если в данный момент ты находишься в Windows, то попробуй использовать plink (www.chiark.greenend.org.uk/~sgtatham/putty/):

plink -1 -4 -L 110:localhost:110 shocker@hacked.box.nl sleep 600

Теперь измени в своем почтовом клиенте адрес POP3-сервера на 127.0.0.1 и спокойно забирай почту.

Немного усложним задачу: требуется подключаться по протоколу SSH2 и форвардить не только POP3, но и SMTP-соединения. Плюс дать возможность другим пользователям использовать твой туннель (флажок -g):

# ssh -2 -4 -C -N -f -g -L 25:localhost:25 -L 110:localhost:110 shocker@hacked.box.nl

<X в стиле ][>

Согласись, при подключении к удаленному узлу тебе неоднократно приходила в голову мысль избавиться от нагоняющего тоску текстового режима и в полной мере насладиться возможностями X-Window. Не вопрос. Рассмотрим самый распространенный случай, когда клиентом выступает Windoze, а в роли сервера - *nix. Понадобятся всего лишь две программы: X-win32 - реализация X11-сервера для Windows (со всеми необходимыми шрифтами ~11 мегов; www.starnet.com/) и F-Secure SSH Client (~5 мегов; www.f-secure.com/products/ssh/). Ни PuTTY, ни SecureCRT использовать не получится: X-win32 работает только со своим ssh-клиентом.

Назад на стр. 057-078-3  Содержание  Вперед на стр. 057-078-5