Иногда приходится администрировать удаленные системы, где в целях безопасности закрыт доступ к ресурсам домашней сети. Единственный проброшенный ресурс - SSH доступ до сервера.
Протокол SSH позволяет создавать тунели, с помощью которых можно получить доступ к нужным ресурсам, в том числе к админке мажордомо, находящейся в домашней сети.
Как не странно, возможности создания SSH тунеля встроены в Putty
В открывшемся окне, в настройках следует указать тип ключа и его длину и нажать кнопку «Generate». После нажатия, следует повозить мышью над окном программы, для того, чтоб программа смогла собрать последвательность случайных чисел.
Для этого воспользуемся программой PuttyGen. В открывшемся окне, в настройках следует указать тип ключа и его длину и нажать кнопку «Generate». После нажатия, следует повозить мышью над окном программы, для того, чтоб программа смогла собрать последвательность случайных чисел.
По окончании генерации окно программы будет выглядеть следующим образом:
Нажимаем кнопку «Save private key», и в открывшемся диалоговом окне вводим имя файла, содержащего секретный ключ. Назовем его, например private.key. Публичный ключ отображается в верхнем поле «Key» и имеет вид: «ssh-rsa AAAAB3NzaC1ycчто-тоuJQ== rsa-key-дата-создания-ключа″. Сохранять публичный файл не обязательно, но если вам потребуется в дальнейшем настраивать пдключение к другим серверам, тогда удобней копировать ключ из локально содержащегося файла. По аналогии с приватным ключем нажимаем кнопку "Save public key" и в открывшемся окне вводим имя файла, содержащего публичный ключ.
Копируем содержимое поля "Public key for pasting into OpenSSH authorized_keys file" в буффер обмена и закрываем PuttyGen.
Запускаем ssh-клиент Putty и производим подключение к серверу обычным образом, вводя имя пользователя и пароль.
На сервере, проверяем наличие папки ~/.ssh.
ls -a ~/. |grep .ssh
Если ее нет, создаем командой:
mkdir ~/.ssh
Создаем файл ~/.ssh/authorized_keys и копируем в него публичный ключ, который мы скопировали в буффер обмена. Обратите внимание, что ключ должен находиться в одной строке, без переносов.
cd ~/.ssh
touch authorized_keys
vi authorized_keys
Устанавливаем права доступа к файлу authorized_keys и папке ~/.ssh:
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
Закрываем соединение, для этого выходим из PuTTY и запускаем программу снова. В настройках SSH соединения указываем путь к приватному ключу: Connection->SSH->Auth->Private_key_for_Authentification->private.key
Сохраняем настройки подключения и подкючаемся к серверу. SSH-сервер запросит имя пользователя под которым вы хотите войти в систему, укажите свой логин, тот для которого вы редактировали authorized_keys файл. Далее авторизация пройдет автоматом с использованием приватного ключа, находящегося у нас на компьютере и публичного ключа, находящегося в authorized_keys файле на сервере.
Putty может создавать SSH тунели, одним из следующих вариантов:
1) Локальный проброс порта
2) Удалённый проброс порта
3) Socks–proxy
Рассмотрим первый вариант для подключения к удаленному Majordomo. Делаем настройки тунеля как на скриншоте:
Для того, чтобы каждый раз не перенастраивать, на вкладке Sassion сохраняем настройки кнопкой save.
При обращении по адреcу http://localhost:8989/ через браузер вы должны увидеть страницу удаленного сервера. Тунель будет работать до тех пор, пока запущен putty.
Поздравляем, защищенный доступ до админки MajorDomo получен.
Посмотреть подключения удаленного сервера можно командой netstat -tlpn
Используемые материалы:
https://putty.org.ru/articles/putty-ssh-tunnels.ht...
http://profhelp.com.ua/articles/%D0%BD%D0%B0%D1%81...
Екатеринбург, Россия
На форуме: directman66