Безопасность SSH — узелки на память

Просто полезности для того, чтобы спать спокойно. Даже для домашнего компьютера весьма невредно. И да, это для Debian/Ubuntu, легко адаптируется для других линуксов и FreeBSD.

Безопасность SSH, SSH Security

  1. Первым делом: Port 2345
  2. Обязательно: PermitRootLogin no
  3. Еще: AllowUsers eniky beniky vareniky или AllowGroups developers administrators
  4. Не забываем и про DenyUsers bad ass или DenyGroups justUsers
  5. Авторизацию делаем покороче, чем дефолтные 2m: LoginGraceTime 1m
  6. При наличии нескольких сетевых интерфейсов не обязательно давать допуск на всех, ограничиваем: ListenAddress 192.168.0.13
  7. Ограничиваем время бездействия клиента до разрыва соединения параметрами ClientAliveInterval и ClientAliveCountMax
  8. Авторизуемся только по ключу. Имя пользователя и пароль хороши везде, кроме авторизации на компьютере.
  9. Ключ должен быть обязательно с паролем (passphrase). Это может чуть добавить неудобства, но ключ без пароля — все равно что без ключа вовсе.

P.S. Ну и дополнительно к SSH в плане безопасности:

  1. Установить fail2ban. Это musthave. И регулярно смотрим логи.
  2. Каждому пользователю, которому нужно, настроить sudo. Никаких sudo all без пароля. Обязательно достаточно короткий timeout, не больше чем минут 5-10.
  3. Ну и банальности — ставим firewall, отключаем неиспользуемые сервисы, мониторим и анализируем логи.

P.P.S. Еще можно настроить Two-factor authentication с использованием, например, Google Authenticator, но это уже на ваше усмотрение.

Навеяло. Больше, подробнее, интереснее.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *