5 эффективных советов по обеспечению безопасности SSH-сервера в Ubuntu
В этой статье вы узнаете о 5 эффективных решениях для повышения безопасности SSH-доступа в Ubuntu и защиты вашего сервера от угроз.

5 эффективных советов по обеспечению безопасности SSH-сервера в Ubuntu

В этой статье мы рассмотрим 5 эффективных способов повышения безопасности вашего SSH-сервера в Ubuntu. Внедрение этих советов позволит вам улучшить безопасность ваших серверов и предотвратить несанкционированный доступ. К ним относятся аутентификация с помощью SSH-ключей, ограничение доступа и использование инструментов защиты, таких как Fail2Ban.
0 Акции
0
0
0
0
  1. Достаточно ли защищен доступ по SSH к вашему серверу Ubuntu?
  2. Обзор и цели
  3. 1) Используйте надежные SSH-ключи и отключите пароли.
    1. Пример сценария с использованием графического процессора (ИИ)
  4. 2) Ограничение доступа: порт, пользователи, адреса и разрешенные пользователи/группы пользователей.
  5. 3) Предотвращение атак методом перебора паролей и управление атаками: Fail2Ban, UFW и защита от DDoS-атак.
    1. Сравнение местоположений и их влияние на безопасность.
  6. 4) Мониторинг, аудит и обнаружение вторжений
  7. 5) Двухфакторная аутентификация, бастион и управление доступом (PAM, 2FA)
    1. Практические советы по управлению ключами и курсами.
  8. Пример предлагаемой конфигурации sshd_config
  9. Дополнительные и практические советы для конкретных ситуаций.
  10. Информация об услугах и инфраструктуре
  11. Краткое описание и краткий контрольный список для внедрения
  12. Часто задаваемые вопросы

Достаточно ли защищен доступ по SSH к вашему серверу Ubuntu?

Обеспечение безопасности SSH-доступа — один из самых основных и важных шагов для любого Linux-сервера, особенно если на нем размещены критически важные сервисы, такие как веб-сайты, базы данных, торговые серверы или узлы с графическими процессорами. В этом руководстве мы рассмотрим пять практических и технических решений для обеспечения безопасности SSH-доступа. Усиление безопасности SSH в Ubuntu Включает в себя практические инструкции, примеры конфигурации и адаптируемые советы для сценариев торговли, игр, искусственного интеллекта и веб-хостинга.

Обзор и цели

Цель данного руководства — представить пять ключевых моментов, объединяющих принципы Конфиденциальность, Сниженная дальность атаки, Обнаружение вторжений и реагирование на них и увеличить Устойчивое развитие Обложки.

  • Замена аутентификации на SSH-ключ Вместо пароля
  • Ограничение доступа (порт, пользователь, IP-адрес)
  • Внедрение защитных инструментов, таких как Фэйл2Бан и UFW/iptables
  • Мониторинг и аудит (журналы, sshd -T(инструменты для обзора)
  • Используйте двухфакторную аутентификацию или методы Bastion/Jumphost.

1) Используйте надежные SSH-ключи и отключите пароли.

Использование SSH-ключи Вместо пароля он обеспечивает защиту от атак методом перебора и упрощает управление доступом. Новые ключи, такие как... ed25519 Они особенно рекомендуются, если вам необходима совместимость со старыми системами. RSA 4096 Использовать.

Создание защищенного ключа на стороне клиента:

ssh-keygen -t ed25519 -a 100 -o -f ~/.ssh/id_ed25519 -C "user@host"

Или (для совместимости):

ssh-keygen -t rsa -b 4096 -o -a 100 -f ~/.ssh/id_rsa -C "user@host"

Передача ключа на сервер:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server

Пример важных настроек в файле /etc/ssh/sshd_config:

PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

Загрузите конфигурацию SSH:

sudo systemctl reload sshd

Пример сценария с использованием графического процессора (ИИ)

Рекомендуется для использования на GPU-серверах командами машинного обучения/искусственного интеллекта. Группы доступа Создайте и выдайте уникальный ключ для каждого пользователя. Используйте зашифрованную файловую систему для папки с ключами и включите... Аппермор Также рекомендуется использовать (или SELinux, если он доступен).

2) Ограничение доступа: порт, пользователи, адреса и разрешенные пользователи/группы пользователей.

Снизить уровень доступа или поверхность атаки Снижает количество попыток вторжения. Распространенные методы включают изменение портов, ограничение доступа пользователей и ограничения на основе IP-адресов.

Изменить порт по умолчанию:

Port 2222

Ограничить доступ пользователей или групп:

AllowUsers deploy [email protected]/24
# or
AllowGroups sshusers

Ограничение доступа на основе IP-адресов с помощью UFW:

sudo ufw allow from 203.0.113.5 to any port 2222 proto tcp

Отключение функций, представляющих высокий риск:

AllowTcpForwarding no
X11Forwarding no
PermitTunnel no

Сократите время и усилия, затрачиваемые на неудачные попытки входа в систему:

LoginGraceTime 30
MaxAuthTries 3
MaxSessions 2

3) Предотвращение атак методом перебора паролей и управление атаками: Fail2Ban, UFW и защита от DDoS-атак.

Автоматизированные и атаки методом перебора распространены; используются такие инструменты, как... Фэйл2Бан А межсетевые экраны на уровне хоста могут блокировать вредоносный трафик. Кроме того, используйте сервисы защиты от DDoS-атак для борьбы с атаками 4-го и 7-го уровней.

Установка и настройка Fail2Ban:

sudo apt install fail2ban
# create /etc/fail2ban/jail.d/sshd.local with:
[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600

Базовая настройка межсетевого экрана с использованием UFW:

sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp
sudo ufw allow 80,443/tcp
sudo ufw enable

Если вам требуется более надежная защита на сетевом уровне, используйте Сервис защиты от DDoS-атак Воспользуйтесь услугами нашей компании. Наши серверы защиты от DDoS-атак могут быть объединены с сетями BGP/Anycast и CDN для блокировки вредоносного трафика на границе сети.

Сравнение местоположений и их влияние на безопасность.

В более чем 85 представительствах компании по всему миру некоторые центры обработки данных оснащены такими сетевыми функциями, как межсетевые экраны, протокол BGP и аппаратная защита от DDoS-атак. Для серверов, используемых для торговли или обеспечения безопасности, важно выбрать местоположение с поддержкой защиты от DDoS-атак и коротким сетевым путем к финансовым рынкам (например, Лондон, Франкфурт, Нью-Йорк, Сингапур, Токио).

4) Мониторинг, аудит и обнаружение вторжений

Крайне важно знать, кто подключался к серверу и какие попытки не увенчались успехом. Журналы событий и инструменты аудита помогают быстро обнаруживать вторжения.

Полезные команды для проверки:

sshd -T
ss -tulpn | grep ssh
sudo tail -n 200 /var/log/auth.log
last -a

Для анализа логов можно использовать rsyslog, лог-наблюдение Или используйте централизованные службы логирования (например, Elasticsearch/Graylog). Среди других полезных инструментов можно отметить следующие: ssh-audit и Линис И системы обнаружения и предотвращения вторжений, такие как OSSEC Или Сурикаты Они есть.

5) Двухфакторная аутентификация, бастион и управление доступом (PAM, 2FA)

Добавление второго уровня аутентификации предотвращает получение доступа злоумышленником в случае кражи ключа или компрометации учетной записи. В качестве вариантов можно использовать Google Authenticator (PAM), корпоративные сервисы многофакторной аутентификации (MFA), а также Bastion/Jumphost.

Установите Google Authenticator PAM:

sudo apt install libpam-google-authenticator
# then run for each user:
google-authenticator

Настройка PAM и sshd:

# add to /etc/pam.d/sshd
auth required pam_google_authenticator.so

# in /etc/ssh/sshd_config
ChallengeResponseAuthentication yes
UsePAM yes

Для организаций, использующих услуги многофакторной аутентификации, такие как Дуэт Или Окта Также рекомендуется разместить Хозяин Бастиона Благодаря двухфакторной аутентификации, централизованному логированию и унифицированным политикам IAM, это наилучший подход для больших команд.

Практические советы по управлению ключами и курсами.

Периодическая смена ключей, удаление неактивных ключей и использование систем управления идентификацией (LDAP/AD/SSO) для централизованного контроля имеют важное значение для обеспечения безопасности.

Пример предлагаемой конфигурации sshd_config

В следующем примере показаны рекомендуемые настройки (в зависимости от ваших конкретных потребностей может потребоваться дополнительная корректировка):

Protocol 2
Port 2222
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM yes
X11Forwarding no
AllowTcpForwarding no
ClientAliveInterval 300
ClientAliveCountMax 2
LogLevel VERBOSE
AllowUsers deploy [email protected]

Дополнительные и практические советы для конкретных ситуаций.

Трейдеры: Используйте выделенный VPS для торговли, расположенный недалеко от бирж, измеряйте время отклика с помощью сетевых инструментов и держите SSH открытым только с определенных IP-адресов. Используйте защиту от DDoS-атак и протокол BGP.

Игра: Для игр на VPS используйте преимущества локаций с низким пингом и частных сетей. Контролируйте административный доступ через бастион.

Искусственный интеллект и рендеринг: Выбирайте серверы с графическими процессорами в местах, предназначенных для работы с ИИ, ограничивайте доступ по SSH с помощью ключей и двухфакторной аутентификации, а также используйте AllowGroups для разных команд.

Веб-сервер и WordPress: Используйте SSH-ключи для администраторов, защищенный SFTP для загрузки контента и CI/CD с помощью ключей развертывания SSH.

Информация об услугах и инфраструктуре

Сервисная компания в более чем 85 представительств по всему миру Предлагаем: различные типы VPS-серверов для торговли и игр, высокопроизводительные облачные серверы, графические серверы (GPU), серверы с защитой от DDoS-атак, услуги хостинга и доменов, CDN и сети с поддержкой BGP.

  • Для предоставления услуг общественного пользования используйте местоположение с защитой от DDoS-атак.
  • Для обеспечения безопасного доступа рекомендуется использовать Bastion в частной сети, подключаясь через VPN или статический IP-адрес.
  • Для обеспечения минимальной задержки выбирайте серверы с графическими процессорами, расположенные в местах, специально предназначенных для ИИ.
  • Для защиты прикладного уровня, наряду с другими мерами безопасности, следует использовать CDN и WAF.

Краткое описание и краткий контрольный список для внедрения

Контрольный список из 10 шагов для реализации вышеизложенного:

  1. Создание и использование защищенного SSH-ключа (ed25519 Или RSA4096)
  2. Деактивация Аутентификация по паролю и PermitRootLogin
  3. Измените порт SSH по умолчанию и ограничьте дополнительные права доступа.
  4. Установка Фэйл2Бан и конфигурация UFW/iptables
  5. Ограничение и использование IP-адресов РазрешитьПользователям/AllowGroups
  6. Включение ведения журналов и отправка журналов в центральный сервис.
  7. Внедрите двухфакторную или многофакторную аутентификацию для доступа к конфиденциальной информации.
  8. Использование Bastion/Jumphost для удалённого доступа.
  9. Проверьте конфигурацию с помощью sshd -T и инструменты аудита
  10. Периодически проверяйте ключи, вынимайте старые ключи и меняйте их местами.

Часто задаваемые вопросы

Вам также может понравиться
Технические и дополнительные темы в cPanel

Технические темы и расширенные инструменты cPanel

Если вы используете cPanel для управления хостингом, вы, вероятно, уже знакомы с её распространёнными функциями, такими как файловый менеджер и электронная почта. Но cPanel также предлагает гораздо более продвинутые и технические функции, которые могут значительно повысить скорость, безопасность и стабильность вашего сайта.
نحوه بکاپ‌گیری دستی از میکروتیک با ترمینال به‌صورت قدم‌به‌قدم

نحوه بکاپ‌گیری دستی از میکروتیک با ترمینال به‌صورت قدم‌به‌قدم

در این راهنما، نحوه بکاپ‌گیری دستی از میکروتیک به‌صورت قدم‌به‌قدم با استفاده از ترمینال آموزش داده شده است. شما با روش‌های مختلف ایجاد بکاپ، اکسپورت فایل‌های سرتیفیک و نکات امنیتی آشنا خواهید شد.
Полное руководство по размещению ASP.NET Core на Linux

Полное руководство по размещению ASP.NET Core на Linux

В этой статье вы узнаете, как размещать приложения ASP.NET Core на Linux. Вы научитесь устанавливать среду выполнения .NET, настраивать Kestrel и Nginx, а также учитывать вопросы безопасности, оптимизации и масштабируемости.
Разница между прямым и обратным прокси-сервером.

Разница между прямым и обратным прокси-сервером.

В этой статье мы рассмотрим ключевые различия между прямыми и обратными прокси-серверами. Понимание этих концепций поможет вам принимать более взвешенные решения при проектировании сетевой инфраструктуры. Статья включает определения, примеры применения и практические примеры конфигурации.
Повысьте производительность, точность и безопасность с помощью AWS Global Accelerator.

Повысьте производительность, точность и безопасность с помощью AWS Global Accelerator.

AWS Global Accelerator — это важнейший сервис, обеспечивающий повышение производительности и безопасности веб-сайтов и приложений, использующих Anycast IP-адреса. В этой статье подробно рассматривается, как оптимизировать доступность, уменьшить задержку и защитить приложения с помощью технологий AWS.
Как установить и настроить VPN-сервер OpenConnect на Ubuntu 22.04 с Let's Encrypt

Как установить и настроить сервер OpenConnect (ocserv) на Ubuntu 22.04 с Let's Encrypt

В этой статье мы узнаем, как настроить VPN-сервер OpenConnect (ocserv) на Ubuntu 22.04 с использованием сертификатов Let's Encrypt. Данное руководство охватывает установку, настройку, советы по безопасности и оптимизацию VPN-сервиса.