- Удаленный доступ на Ubuntu с Windows машины
- Настройка SSH на Ubuntu [ править ]
- Настройка Putty на Windows [ править ]
- Как удаленно управлять сервером Ubuntu с помощью SSH
- Установка SSH-соединения
- Необходимые условия
- Установка сервера OpenSSH
- Обновление базы данных пакетов
- Настройка сервера SSH
- Проверка состояния службы SSH
- Доступ к серверу Ubuntu Linux через SSH-клиент
- Подключение к Ubuntu из Windows с помощью SSH-клиента Putty
- Похожие записи:
Удаленный доступ на Ubuntu с Windows машины
Тут будет описано как организовать удаленный доступ к машине под Ubuntu с машины под Windows при этом будут использоваться такие утилиты как SSH, Putty, Tight VNC и Vino.
Общий принцип работы: с компьютера под Windows создается защищенный SSH-туннель до Ubuntu и через него создается VNC-подключение (удаленный рабочий стол):
- Настройка SSH на Ubuntu
- Настройка Putty на Windows
- Настройка Удаленного доступа на Ubuntu
- Подключение с использование TightVNC
Настройка SSH на Ubuntu [ править ]
Установка и активация SecureShellServer:
sudo apt-get install openssh-server service ssh status ssh start/running, process 2006
Проверка открытости 22 порта (порт, используемый по умолчанию SSH):
netstat -tulpan | grep :22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
В Linux для подключения по SSH с использованием локального проброса портов (local port forwarding) используется в общем виде следующая команда:
Это означает, что любое соединение, исходящее из локального компьютера (localhost) через порт будет перенаправлено по SSH-тунелю на удаленной машины.
Существует некоторая путаница относительно какие же IP указывать в и . Если компьютер находится за роутером (NAT’ом) то должен быть внутренним ip-адресом компьютера (например, 10.0.0.5), а в внешним ip-адресом роутера. Если компьютер подключается к Интернету напрямую, то адреса и будут одинаковыми.
Подводя итог про туннелирование рассмотрим пример:
ssh -l myuserid -L 7777:work:22 gate ssh -p 7777 localhost
Данная комманда делает следующее: создается защищенное ssh-подключение к машине gate под пользователем myuserid. Одновременно с этим начинается прослушивание на локальной (с которой осуществлялось подключение) машине на порту 7777. Если организуется подключение на этот порт (опять изнутри самой локальной машины), то это соединение туннелируется в ssh-соедиенние, доходит до машины gate и с нее осуществляется соединение на машину work на 22 порт. После этого мы проверяем работу туннеля – подключаясь по ssh на локальный порт 7777 мы в итоге подключаемся к машине work (при учете что на ней настроен ssh сервер на порту 22).
Усиленная защита при использовании SSH-туннеля достигается за счет того, что только один порт должен быть открыт наружу (SSH) и зашифрованное подключение будет идти только через этот порт. На сервере проверяем присутствует ли папка
если нет, то создаем под пользователем (как правило, это первый пользователь в системе или администратор):
mkdir ~/.ssh cd ~/.ssh touch authorized_keys
Настраиваем ssh для большей безопасности. Файл настроек лежит по адресу:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
В общем случае следует изменить:
- Отключить возможность аутентификации с помощью пароля (можно сделать и позже, после удачного первого соединения):
Для большей безопасности следует настроить на аутентификацию SSH с помощью открытого ключа. Разрешенные к подключению по ssh публичные ключи хранятся в файле
Генерируем пару открытый/закрытый ключей на машине, с которой будем подключаться (будет описано далее) и копируем открытый ключ в этот файл.
Особое внимание нужно обратить на форматирование – весь ключ должен быть размещен в одну строку и начинаться с «ssh-rsa » и доступ к файлу (-rw——- (600)).
Настраиваем правильный доступ к файлу с ключами:
chmod go-w $HOME $HOME/.ssh chmod 600 $HOME/.ssh/authorized_key chown `whoami` $HOME/.ssh/authorized_keys
/etc/ssh/sshd_config изменяем:
StrictModes no
Для применения настроек, внесенных в файл /etc/ssh/sshd_config, необходимо перезапустить демон sshd:
Настройка Putty на Windows [ править ]
Перед тем как погрузиться в настройки Putty необходимо сделать несколько замечаний:
- Putty сохраняет настройки в профили.
- Для сохранения всех настроек в профиль нужно перейти в меню Session в графе Saved Session ввести имя профиля и нажать Save. Для того чтобы загрузить определенный профиль в Putty в том же меню нужно выбрать нужный профиль по имени и нажать Load.
- Для автоматической загрузки определенного профиля при запуске Putty нужно создать ярлык на exe-файл и в строке Рабочая папка дописать после пути к exe файлу добавить -load
Как удаленно управлять сервером Ubuntu с помощью SSH
Вам часто может потребоваться доступ к удаленным серверам для администрирования, управления и устранения неполадок, и существует несколько способов сделать это. Вы можете использовать telnet для входа на удаленные серверы; FTP позволяет передавать файлы между различными серверами. Однако эти программы недостаточно безопасны для подключения к критическим серверам. SSH, secure shell — это криптографический сетевой протокол, с помощью которого вы можете получить безопасный доступ к сетевым сервисам через незащищенную сеть. SSH позволяет получить доступ к серверам через Терминал и различные функции командной строки. Это полезно, если вы хотите получить доступ к серверу и управлять им удаленно, используя безопасный способ.
В этой статье я опишу, как можно удаленно управлять сервером Linux с помощью SSH.
Для этой статьи я использую следующие машины:
Установка SSH-соединения
Прежде чем установить безопасное удаленное соединение с сервером Ubuntu с помощью SSH, необходимо выполнить некоторые основные требования.
Необходимые условия
Ниже перечислены некоторые предварительные условия:
- Удаленный сервер должен быть включен и иметь стабильное сетевое подключение.
- Вам потребуется IP-адрес сервера.
- Удаленный сервер должен быть доступен через этот IP-адрес. Вы можете проверить это с помощью команды Ping.
- Инструменты SSH-сервера и SSH-клиента должны быть установлены в ОС сервера и клиента соответственно.
- Вам потребуется имя пользователя и пароль удаленного сервера.
- Брандмауэр не должен блокировать соединение.
Установка сервера OpenSSH
Для удаленного управления сервером Ubuntu по SSH вам понадобится программное обеспечение SSH-сервера. Однако, прежде чем приступить к установке OpenSSH, сначала обновите список пакетов, чтобы получить самые актуальные репозитории.
Обновление базы данных пакетов
Нажмите Ctrl + Alt + T, чтобы запустить Терминал в Ubuntu. Введите следующую команду в Терминале для обновления базы данных пакетов.
После обновления репозиториев выполните эту команду в Терминале, чтобы проверить наличие обновления для установленных пакетов.
После обновления пакетов выполните следующую команду в Терминале:
sudo apt-get install openssh-server
Настройка сервера SSH
Теперь вам нужно выполнить некоторые основные и необходимые настройки SSH-сервера в файле ssh_config. Для этого выполните следующую команду в Терминале, чтобы открыть ssh_config:
sudo nano /etc/ssh/sshd_config
Здесь вы можете выполнить различные настройки конфигурации. Сейчас мы выполним только базовую и начальную настройку, как показано на скриншоте ниже. Раскомментируйте следующую строку в файле ssh_config:
Под номером порта добавьте строку MaxAuthTries. Вы можете ввести здесь любое число, которое будет разрешать максимальное количество попыток входа в систему.
Закончив с базовой конфигурацией, сохраните файл и выйдите из редактора Nano.
Проверка состояния службы SSH
Чтобы проверить состояние SSH-сервера, запущен он или нет, вы можете выполнить следующую команду в Терминале:
Вышеприведенная команда подтверждает, что служба SSH активна и запущена.
Теперь SSH-сервер настроен на прием удаленных соединений с различных компьютеров с помощью SSH-клиента.
Если служба SSH не запущена, вы можете запустить ее вручную, выполнив следующую команду в Терминале:
Вы также можете остановить службу SSH, выполнив следующую команду в Терминале:
Доступ к серверу Ubuntu Linux через SSH-клиент
Вы можете получить доступ к серверу Linux через SSH-клиент в ОС Linux или Windows:
Если вы используете операционную систему Linux, вы можете получить доступ к SSH серверу с помощью программы Terminal.
Нажмите Ctrl+Alt+T для запуска программы Terminal. Выполните команду в следующем синтаксисе для доступа к удаленному серверу:
ssh [удаленный сервер] [номер порта].
Где [remote server] — имя или IP удаленного сервера, а [Port Number] — удаленный порт для SSH-соединений.
Также вы можете ввести команду вместе с именем пользователя удаленного сервера в следующем синтаксисе:
ssh [имя пользователя]@[удаленный сервер] [номер порта]
Где [имя пользователя] — это имя пользователя удаленного сервера.
Введите yes, когда появится сообщение с вопросом, хотите ли вы продолжить подключение. Это добавит пользователя в список известных хостов. При следующем подключении это сообщение больше не появится.
Когда появится запрос на пароль, введите пароль удаленного пользователя.
Теперь вы подключены к удаленному серверу. Вы можете запустить любую команду и использовать ее так же, как и при доступе к локальному серверу.
Подключение к Ubuntu из Windows с помощью SSH-клиента Putty
Если вы используете операционную систему Windows, вы можете использовать putty в качестве SSH-клиента.
Установите putty в вашей операционной системе Window. Чтобы запустить Putty, введите putty в строке поиска Windows и выберите putty.exe из наиболее подходящих результатов.
В окне конфигурации putty, в категории сеансов, введите IP-адрес удаленного сервера в поле с надписью Имя хоста (или IP-адрес).
В разделе Тип соединения выберите радиокнопку SSH. Если вы используете порт, отличный от стандартного порта 22, обязательно измените его, в противном случае оставьте стандартный порт 22. Затем нажмите кнопку Открыть, чтобы разрешить соединение.
Откроется терминал с запросом на вход. Введите имя пользователя и пароль пользователя удаленного сервера.
После успешного входа на удаленный сервер вы можете выполнить любую команду для управления им.
Вот как вы можете легко подключить серверы Linux с помощью SSH. Теперь вы можете управлять и администрировать сервер удаленно. SSH — это не только безопасный метод подключения к серверу, но и удобный.