- Подключаемся по SSH и VNC с помощью Remmina в Astra Linux. Альтернатива Hyper-V под Linux. Часть 6.
- Соединяемся с удаленным ПК по протоколу VNC
- Подключение к удаленному серверу по SSH
- Заключение
- Установка пакета
- Простейшие меры безопасности
- Авторизация по ключам
- Настройка клиента
- Настройка выбора алгоритмов защитного преобразования.
- Монтирование удалённой файловой системы по ssh
- Использование алгоритмов защитного преобразования данных ГОСТ
- Проверка используемого алгоритма защитного преобразования
Подключаемся по SSH и VNC с помощью Remmina в Astra Linux. Альтернатива Hyper-V под Linux. Часть 6.
Сегодня мы рассмотрим использование Remmina для подключения к удаленному серверу с помощью протоколов SSH и VNC.
Работая с OpenNebula вам постоянно придется работать с виртуальными машинами через протокол VNC. Дело в том, что это единственный способ получить прямой доступ к виртуальному серверу, как если бы к нему был присоединён монитор с клавиатурой. Даже при перезагрузке виртуального сервера вы сможете увидеть процесс загрузки, т.е. связь с ним, пока он запущен не пропадет при использовании данного протокола.
Протокол SSH понадобится для безопасного соединения с любым сервером и ПК на базе Astra Linux.
Соединяемся с удаленным ПК по протоколу VNC
Remmina поддерживает данный протокол.
Запустим Remmina и добавим новый профиль. В разделе Протокол выберем VNC – просмотр VNC
Заполним, как показано на рисунке.
При этом 192.168.1.20 – адрес сервера OpenNebula
OpenNebula автоматически назначает порты для VNC для каждой виртуальной машины. Первыми всегда идут цифры 59, далее ID виртуальной машины, например, (5901, 5906, 5914)
Не забудьте выставить Глубину цвета равной 32 бит/пиксель
Два раза щелкните на профиль VNC1, откроется окно с нашей виртуальной машиной
Чтобы отправить виртуальной машине сочетание Alt+Ctrl+Del используйте панель инструментов как указано на рисунке:
К сожалению, Remmina не поддерживает работу с буфером обмена по протоколу VNC, так что скопировать какой-либо текст на виртуальную машину или с неё не получится.
VNC поддерживает авторизацию с помощью пароля. Настройку OpenNebula для авторизации по логину/паролю при соединении к виртуальной машине по протоколу VNC мы рассмотрим в одной из следующих статей.
Подключение к удаленному серверу по SSH
Remmina поддерживает соединение по протоколу SSH.
Для организации соединения создадим новый профиль и выберем в разделе протокол – пункт SSH – безопасная оболочка
Введите IP-адрес сервера и имя пользователя.
Вы так же можете сохранить пароль, что не рекомендуется из соображений безопасности!
Два раза щелкните на профиль Astra1, откроется удаленная консоль:
Remmina, кроме авторизации по паролю, поддерживает и другие способы:
Некоторые из них мы рассмотрим в одной из следующих статей.
Заключение
Сегодня мы рассмотрели использование Remmina для подключения к удаленному ПК или серверу по протоколам SSH и VNC.
Создали профили и протестировали соединение.
Установка пакета
Пакет SSH входит в дистрибутивы Astra Linux, но по умолчанию устанавливается только клиент.
Установку сервера можно выполнить:
- При инсталляции системы, отметив соответствующий пункт в диалоге выбора программного обеспечения
После установки системы с помощью графического менеджера пакетов (см. Графический менеджер пакетов synaptic) или из командной строки:
apt install ssh |
После установки с помощью графического менеджера пакетов или из командной строки сервис запускается автоматически.
В Astra Linux Common Edition начиная с обновления 2.12.12 и в Astra Linux Special Edition x.7 сервис SSH, установленный при инсталляции операционной системы, запускается после перезагрузки автоматически. В более ранних обновлениях после установки при инсталляции ОС сервис ssh будет отключен, и его нужно будет включить и запустить отдельно командами:
systemctl enable ssh
systemctl start ssh
Проверить состояние сервиса:
systemctl status ssh |
Конфигурация сервера хранится в файле /etc/ssh/sshd_config.
Чтобы изменения вступили в силу необходимо перезапустить сервис:
systemctl restart sshd |
Простейшие меры безопасности
Из соображений повышения безопасности рекомендуется изменить некоторые значения по умолчанию:
- Port — номер порта, который слушает сервис (22) — на любое другое
- MaxAuthTries — количество попыток подключения (6) — уменьшить, например, до 3
- LoginGraceTime — время, дающееся для подключения (2m) — уменьшить, например до 30s
Дополнительно, можно ограничить IP-адреса, с которых возможно подключение, например:
- в файле /etc/hosts.deny запретить все подключения:
- а в файле /etc/hosts.allow разрешить только необходимые:
3des-cbc blowfish-cbc cast128-cbc arcfour arcfour128 arcfour256 aes128-cbc aes192-cbc aes256-cbc rijndael-cbc@lysator.liu.se aes128-ctr aes192-ctr aes256-ctr grasshopper-cbc (ГОСТ Р 34.13–2015 «Кузнечик») grasshopper-ctr (ГОСТ Р 34.13–2015 «Кузнечик») aes128-gcm@openssh.com aes256-gcm@openssh.com chacha20-poly1305@openssh.com |
В поставляемый в составе дистрибутивов Astra Linux пакет ssh встроены следующие алгоритмы выработки имитовставки:
hmac-sha1 hmac-sha1-96 hmac-sha2-256 hmac-sha2-512 hmac-md5 hmac-md5-96 hmac-ripemd160 hmac-ripemd160@openssh.com umac-64@openssh.com umac-128@openssh.com hmac-sha1-etm@openssh.com hmac-sha1-96-etm@openssh.com hmac-sha2-256-etm@openssh.com hmac-sha2-512-etm@openssh.com hmac-md5-etm@openssh.com hmac-md5-96-etm@openssh.com hmac-ripemd160-etm@openssh.com umac-64-etm@openssh.com umac-128-etm@openssh.com hmac-gost2012-256-etm (ГОСТ Р 34.11-2012) |
При этом в список алгоритмов защитного преобразования (параметр конфигурации Ciphers) и выработки имитовставок (параметр конфигурации MACs), допустимых к использованию, по умолчанию включены следующие алгоритмы (перечислены в порядке убывания приоритетов применения):
# Ciphers grasshopper-ctr,aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc # MACs hmac-gost2012-256-etm,hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160 |
Выше приведены строчки из конфигурационного файла клиента /etc/ssh/ssh_config, аналогичные строчки имеются в конфигурационном файле сервера /etc/ssh/sshd_config.
Если возникает необходимость изменить набор допустимых алгоритмов, или изменить их приоритеты, следует раскомментировать эту строчку, и указать нужные алгоритмы в нужном порядка приоритета.
Например, для приоритетного выбора более простых, а значит, более быстрых алгоритмов можно использовать в файле /etc/ssh/ssh_config следующую конфигурацию:
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,grasshopper-ctr
MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-gost2012-256-etm
Монтирование удалённой файловой системы по ssh
SSHFS (Secure Shell FileSystem) — программа, позволяющая монтировать удаленную файловую систему и взаимодействовать с удаленными файловыми ресурсами как с обычными файлами.
Для монтирования SSHFS использует SSH File Transfer Protocol (SFTP) — безопасный протокол передачи данных, обеспечивающий полный доступ к файловым ресурсам через протокол Secure Shell.
От сервера, предоставляющего удалённый ресурс для монтирования, требуется только работающий сервис SSH.
При стандартной установке Astra Linux пакет sshfs устанавливается автоматически, при необходимости может быть установлен с помощью графического менеджера пакетов или из командной строки:
apt install sshfs |
Для выполнения монтирования без запроса пароля должна быть настроена авторизация по ключам (см. выше).
sshfs -o allow_other,IdentityFile= local_user/.ssh/id_rsa remote_user@server:/home/remote_user /mnt |
Пояснения к команде:
- -o — ключ, указывающий, что далее следуют параметры подключения/монтирования;
- allow_other — разрешить доступ к примонтированному ресурсу непривилегированным пользователям (необязательный параметр);
- IdentityFile=
local_user/.ssh/id_rsa — файл с ключом доступа (необязательный параметр, если его нет — будет запрошен пароль);
(в данном случае на сервере server от имени пользователя remote_user монтируем домашний каталог этого пользователя /home/remote_user)
Автоматическое монтирование может быть задано в файле /etc/fstab:
sshfs#remote_user@server:/home/remote_user/ /mnt fuse defaults,allow_other,IdentityFile= local_user/.ssh/id_rsa 0 0 |
Для выполнения автоматического монтирования без запроса пароля должна быть настроена авторизация по ключам (см. выше).
Демонтировать ресурс можно обычной командой umount с указанием точки монтирования:
umount /mnt |
В случае ошибок монтирования для демонтирования может понадобиться отдельная команда:
fusermount -u /mnt |
Использование алгоритмов защитного преобразования данных ГОСТ
Сервер и клиент ssh, входящие в состав дистрибутивов Astra Linux, имеют встроенную поддержку работы с алгоритмами защитного преобразования ГОСТ,
причем, если такие алгоритмы поддерживаются и клиентом и сервером, то они используются по умолчанию.
Некоторые подробности про эти алгоритмы можно прочитать в описании библиотеки libgost-astra.
Проверка используемого алгоритма защитного преобразования
Проверку используемого при подключении алгоритма защитного преобразования можно производить как на стороне клиента, так и на стороне сервера.
В обоих случаях для этого нужно включить вывод отладочной информации.
На стороне сервера:
в файле конфигурации сервера /etc/ssh/sshd_config раскомментировать строчки SyslogFacility и LogLevel, заменить уровень отладки INFO на DEBUG
# Logging SyslogFacility AUTH LogLevel DEBUG |
После внесения изменений перезапустить сервер:
systemctl restart ssh |
Отладочная информация сервера ssh выводится в файл /var/log/auth.log, и отслеживать сообщения о методах защитного преобразования, используемых при подключении клиентов, можно командой:
tail -f | grep cipher /var/log/auth.log |
На стороне клиента:
При выполнении подключения использовать опцию -v для вывода отладочной информации:
ssh -v ServerSSH
И в первом, и во втором случае используемый для подключения метод защитного преобразования будет отображен в виде строчек такого вида:
Adblockdetector