Вы здесь

Безопасная настройка sshd

В продолжение к предыдущей статье о dyndns. Наверное, после установки внешнего доменного имени на домашнем компьютере самое время настроить на нем ssh сервер. Не ради удовольствия, естественно, но сугубо ради китайских хакеров. То есть, для пользы. Должны же они на ком-то тренироваться? Я расскажу о нескольких, на мой взгляд, полезных для безопасности настройках sshd, которыми пользуюсь сам.

large_sshd-huyvam.png

Установка и настрока ssh сервера.
Самое простое:

sudo aptitude install openssh-server

Теперь

sudo vim /etc/ssh/sshd_config
  • Port 22 - вообще-то, номер порта было бы лучше установить в другое значение. Пробивают обычно
    именно 22-й. Конечно, и другие сканируют, но лишняя защита не помешает.
  • PermitRootLogin no - обязательно установите значение в no. Это запрещает логинится рутом через ssh.
  • AllowUsers vasia - этого параметра нет в конфиге, допишите немедленно. vasia - имя вашего юзера :) Этот параметр устанавливает разрешение логинится только и только с этим именем. ssh пробивают не только на предмет пароля, но и на предмет системных или стандартных имен. К примеру apache, www, которые по каким-то причинам могут оказаться безпарольными, или andy, bobby, anna и тп. Последние любят ставить одноименные пароли, или 123456, qwerty... чтоб быстрее было. К имени vasia можно добавить ip-адрес - vasia@217.147.48.132 - если вы уверены, что на клиентской машине всегда именно этот не меняющийся адрес. Такой параметр разрешит логинится только пользователю vasia и только при условии, что его хост совпадает с заданным.
  • PermitEmptyPasswords no - О! Это то о чем я говорил. Запретить пустые пароли. Совсем.

Собственно, я больше ничего не меняю. Меня еще ни разу не пробили :) Хотя, в sshd_config есть еще масса чудесных ограничивающих параметров. Почитайте ман, не пожалеете.
Перегружаем sshd, чтобы поднять отредактированный конфиг:

sudo /etc/init.d/ssh restart

Теперь можно более-менее безопасно быть видимым в интернете. А через недельку видимости почитайте /var/log/auth* на предмет сканирования. Там много познавательного.

Оригинал статьи: http://libc6.blogspot.com/2008/09/sshd.html