Как настроить новую установку Ubuntu для приема SSH-соединений?

226

Я только что установил Ubuntu. Как мне настроить это, чтобы позволить мне ssh в это?

Прямо сейчас я получаю «ssh: connect to host xxxx port 22: Тайм-аут операции».

Дэрил Спитцер
источник

Ответы:

297
sudo apt update
sudo apt install ssh
sudo ufw allow 22      # if you have ufw running, but it doesn't hurt to run.

Это самый минимум. Это позволяет неограниченное количество неудачных попыток ввода пароля на известный порт. Прямой корневой Войти отключен (вы все еще можете suи sudoпосле входа в систему ). Если ваше имя пользователя и пароль являются предположительными, и Интернет может видеть сервер, кто- то в конечном итоге взломает.

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

  • Основанные на ключе логины. Отключить логин паролей.
  • Отодвиньте его от порта 22. Используйте что-нибудь сумасшедшее, в диапазоне 20000-60000.
  • Используйте, fail2banчтобы запретить людям, которые действительно находят это и пытаются обмануть это.

Это займет у вас менее 10 минут, и у вас будет шанс с вероятностью 1/10000 быть взломанным - с такой малой вероятностью, что в мире не хватает бумаги, чтобы написать ее долю. Все, если вы осторожны со своим ключом, у него есть собственная фраза-пароль, и вы не передаете свои учетные данные по всей сети.

С точки зрения доступа к этому SSH-серверу из Интернета, вы можете столкнуться с препятствиями локальной сети. Если компьютер находится за маршрутизатором NAT (например, в большинстве домашних сетей) без прямого входящего доступа из Интернета, вам может потребоваться переадресация портов . Очевидно, что если вам не нужен доступ за пределы сети, пропуск этого шага будет способствовать безопасности сети.

Оли
источник
9
В зависимости от вашего экземпляра вам может не понадобиться sudo ufw allow 22. Например, у меня есть простой экземпляр VirtualBox Ubuntu-Server с Bridged Networking на хосте Windows (для простых нужд dev) - нет необходимости открывать порт 22 (уже открыт), нет необходимости в закалке, которая потенциально может закрыть 22, нет необходимости использовать другой порт.
Крис Москини
@Oli - Не могли бы вы немного рассказать о том, как работает fail2ban? Вы просто устанавливаете его, и он автоматически запускает для вас демон или он требует настройки?
Маттео
2
@Matteo Поставляется с некоторыми настройками по умолчанию для общих служб (например, SSH). В этом случае, если вы не внесли серьезных изменений в место хранения журналов, достаточно просто установить его.
Оли
Просто FYI, sudo apt-get install sshкажется, то же самое, что иopenssh-server
Шридхар Сарнобат
1
@ Sridhar-Sarnobat, sshпакет описывается как метапакет как для клиента защищенной оболочки, так и для сервера защищенной оболочки, поэтому при его установке вы получите обе установленные зависимости. Однако по умолчанию клиент уже установлен в Ubuntu, поэтому вам, вероятно, нужно только установить сервер.
H2ONaCl
23

Установка пакета openssh-server, доступного в Центре программного обеспечения, предоставит элемент server, позволяющий клиенту, например другому рабочему столу Ubuntu, установить безопасное соединение с «сервером», таким как ваша виртуальная машина.

Сообщество Ubuntu имеет отличное руководство по SSH , OpenSSH-серверу и тому, как его настроить безопасным образом.

fossfreedom
источник
3

Я просто хотел добавить, что вам нужно убедиться, что вы выбрали правильный интерфейс WAN, если ваш модем / маршрутизатор поддерживает несколько интерфейсов WAN.

У меня Billion BiPAC 7800NXL, в котором есть 3 возможных порта WAN (DSL, ETH и 3G). При создании новых переадресаций (называемых «виртуальным сервером» на этом маршрутизаторе) 7800NXL всегда по умолчанию использует интерфейс DSL WAN, хотя я использую только интерфейс Ethernet WAN.

У меня все порты были настроены правильно, но мой форвард был настроен на использование DSL, поэтому он не работал. Как только я создал новый форвард для интерфейса ETH WAN, он заработал.

Greg
источник
3

Настройте службы SSH или включите службы сервера SSH на сервере Ubuntu:

Для установки или настройки SSH в Ubuntu сначала вам необходимо установить пакеты SSH на сервере Ubuntu, чтобы затем вы могли использовать свою виртуальную машину на своей хост-системе через Putty или другой патч входа в SSH ...

Сначала вам нужно установить пакет SSH в Ubuntu, поэтому запустите эту команду

#sudo apt-get install openssh-server

Когда-то вы, парень, получили некоторые ошибки при установке или добавлении этого пакета на свой сервер, например ..

Ошибка CDROM при установке пакета SSH, поэтому для решения этой проблемы вы можете воспользоваться другим ярлыком, доступным на Mounting CDROM. Наконец, после монтирования этого CDROM на сервере Ubuntu, вы теперь можете легко установить службу SSH с помощью следующей команды

#sudo apt-get install openssh-server

Этот пакет установить сейчас и во время установки спросить да / нет и нажать ДА ...

Наконец, установите пакет SSH на сервер Ubuntu, затем перезапустите службы SSH, выполнив следующую команду:

#sudo service ssh restart
---OR type---
#sudo service ssh start

Затем увеличьте ваш SSH, установите и запустите SuccessFully ... теперь откройте Putty с вашего локального хоста и введите там свой IP-адрес виртуальной машины. Putty Login И BOOM вы можете войти в свой виртуальный сервер через хост-машину Putty SSH ...

Бриеш Сондарва
источник