3

Я пытаюсь настроить сервер SSH , который я могу получить доступ из домашней сети только, а не в Интернете.

Он работает под управлением Ubuntu Linux.

Я установил пакет ssh , и я могу запустить / остановить сервер SSH, а затем перейти к входу в компьютер с другого компьютера, который находится в той же сети.

Однако, прежде чем продолжить, какие соображения безопасности я должен принять? Исключая очевидную установку безопасного пароля.

Я также беспокоюсь: если кто-то узнает IP-адрес сервера, сможет ли он подключиться к нему? Как я могу отключить соединения, которые не приходят с 192.168.*.*?

2 ответа2

2

Вы можете использовать UFW (несложный межсетевой экран), чтобы открыть порт 22 (SSH) только для определенных IP-адресов.

Это было бы что-то вроде:

$ sudo ufw allow from 192.168.0.0/24 to any port 22 proto tcp

Бит 192.168.0.0/24 означает диапазон IP-адресов от 192.168.0.* - то есть от 192.168.0.1 до 192.168.0.255 включительно.

Для получения дополнительной информации см. Документацию UFW.

1

Однако, прежде чем продолжить, какие соображения безопасности я должен принять? Исключая очевидную установку безопасного пароля.

Ключи более безопасны, чем пароли, особенно если они защищены парольной фразой.

Другие вещи (большинство из них задаются в конфигурационном файле):

Вещи, которые всегда хорошая идея:

  • Не позволяйте root напрямую входить в систему (вы всегда можете su или sudo впоследствии)

  • Отключите любые функции, которые вам не нужны в /etc/ssh/sshd_config такие как пересылка и т.д.

  • Не sshd когда он вам не нужен.

Вещи, чтобы предотвратить доступ в Интернет к вашему sshd

  • Если возможно, заблокируйте порт 22 на брандмауэре вашего маршрутизатора. Далее обеспечьте это с помощью правила iptables или ufw как предложено @Greg Hendershott .

  • /etc/hosts_allow контролирует, какие IP-адреса могут обращаться к серверу, и вы можете включить строки, которые запрещают диапазоны IP-адресов.

Если вы позже выставите его в Интернет:

  • Измените порт с 22 на другой, если это возможно. Не добавит никакой реальной безопасности, но уменьшит случайные атаки.

  • Отключите баннер SSH или измените его на то, что не идентифицирует вас (вы хотите сделать это ПОСЛЕ входа в систему).

  • Установите что-то вроде fail2ban который автоматически блокирует IP-адреса, которые делают много неудачных входов в систему.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .