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

У него одежды, нет приобретённого иммунитета и нет почти никаких навыков. Он уязвим для любого внешнего воздействия. И защиту от окружающих угроз мы должны ему дать. Наш новый сервер на начальном этапе не готов противостоять всему, что приходит к нему извне. А значит, его необходимо оснастить защитой.

Такая защита для сервера – брандмауэр, или файрвол (firewall), или межсетевой экран.

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

Управление портами в Ubuntu и Debian

В операционных системах Ubuntu и Debian для управления брандмауэром довольно часто применяется утилита iptables. Её упрощённым интерфейсом является UFW (Uncomplicated Firewall). Открытие доступа к серверу для какого-либо приложения происходит путём регистрации этого приложения в UFW.

ЗАЩИТА сервера Майнкрафт. Основные методы защиты в Minecraft. Часть 1.

В Ubuntu интерфейс UFW как правило присутствует по умолчанию, в Debian же необходимо будет сначала его проинсталлировать. Перед установкой брандмауэра рекомендуется обновить репозитории:

$ sudo apt update $ sudo apt install ufw

Список приложений, зарегистрированных в брандмауэре, доступен по следующей команде:

$ sudo ufw app list

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

$ sudo ufw allow SSH

Эту команду также можно применить используя соответствующий номер порта вместо имени протокола. Для ssh это, как правило, порт 22:

$ sudo ufw allow 22

В Ubuntu команда для разрешения подключения по ssh выглядит как:

$ sudo ufw allow OpenSSH

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

$ sudo ufw enable

Теперь, можно добавить в UFW правило, которое позволит разрешить передачу данных, например, по порту 80, или другими словами, при помощи протокола http . Это можно прописать командой:

$ sudo ufw allow 80
$ sudo ufw allow http

По аналогии можно также разрешить трафик с использованием порта 443, то есть по протоколу https :

$ sudo ufw allow 443
$ sudo ufw allow https

Подобными инструкциями можно давать разрешения для подключений, использующих несколько портов. Например, так выглядит команда на открытие целого диапазона портов (32810-32814):

$ sudo ufw allow 32810:32814/udp

Также, помимо номеров портов и названий протоколов, в разрешительных правилах есть возможность использовать IP-адреса. Вот как выглядит команда, разрешающая подключение только с IP-адреса 10.10.10.233:

$ sudo ufw allow from 10.10.10.233

Или из одной определённой подсети:

$ sudo ufw allow from 10.10.10.0/24

Или с одного определённого IP-адреса и только по одному определённому порту:

$ sudo ufw allow from 10.10.10.233 to any port 22

Естественно существует возможность и закрыть доступ для уже открытого подключения через определённый порт. Для этого используется команда deny . Следующей командой можно запретить подключения по протоколу http :

$ sudo ufw deny http

Инструкция для закрытия всех подключений с определённого IP-адреса выглядит следующим образом:

$ sudo ufw deny from 10.10.10.233

где 10.10.10.233 – IP-адрес, для которого будут закрыты все соединения на наш сервер.

Уже созданные правила можно также удалить. Сделать это можно по номеру правила. Чтобы узнать номера правил, используйте следующую команду:

$ sudo ufw status numbered

Вывод данной команды выглядит следующим образом:

Читайте также:  Как в Майнкрафте легко найти деревню

Вывод команды sudo ufw status numbered - Управление портами в Linux

Номера правил указаны в скобках в начале строки. Например, правило для подключения по 443-му порту имеет номер 3. Исходя из этого, команда для удаления этого правила будет выглядеть как:

$ sudo ufw delete 3

То же самое можно сделать командой:

$ sudo ufw delete allow 443/tcp

Посмотреть текущее состояние межсетевого экрана позволяет команда:

$ sudo ufw status

Просмотр статуса UFW

Для отключения брандмауэра служит следующая инструкция:

$ sudo ufw disable

Управление портами в Centos

Клиентским интерфейсом для работы с межсетевым экраном в Centos является программа firewalld. Как правило, firewalld уже по умолчанию входит в состав служб Centos. Но если вдруг это не так, для его установки используйте следующие команды:

$ sudo dnf update -y $ sudo dnf install firewalld -y

Если окажется, что firewalld уже был установлен в системе, команда вернёт следующее сообщение:

Сообщение об уже установленном firewalld

Текущее состояние службы можно увидеть набрав команду:

$ systemctl status firewalld

Если служба работает штатно, то вывод команды будет выглядеть так:

Просмотр статуса firewalld

Список приложений, которым доступ в firewalld уже предоставлен, можно увидеть с помощью команды:

$ sudo firewall-cmd —permanent —list-all

Такие приложения перечислены в строке services :

Вывод команды sudo firewall-cmd --permanent --list-all

Чтобы предоставить приложению или протоколу, например, http , возможность производить подключения к нашему серверу, необходимо использовать команду следующего вида:

$ sudo firewall-cmd —permanent —add-service=http

Этот протокол должен добавиться в строку services :

Вывод команды sudo firewall-cmd --permanent --list-all - Управление портами в Linux

Аналогичным образом можно открыть доступ для подключений к серверу по протоколу https :

$ sudo firewall-cmd —permanent —add-service=https

Вывод команды sudo firewall-cmd --permanent --list-all - Управление портами в Linux

В firewalld также есть возможность предоставить доступ для подключений по определённому порту. Так, например, будет выглядеть команда для открытия доступа по udp-порту 32810:

$ sudo firewall-cmd —zone=public —add-port=32810/udp

А так пишется команда для открытия доступа по пулу портов, например, для udp-портов с 32811 по 32814:

$ sudo firewall-cmd —zone=public —add-port=32811-32814/udp

И чтобы убедиться, что данные порты добавлены в список открытых, необходимо использовать следующую инструкцию:

$ sudo firewall-cmd —zone=public —list-ports

Список открытых портов в firewalld

Доступ для подключений по определённому порту можно также и заблокировать. Например, закрытие доступа по udp-порту 32814 осуществляется командой:

$ sudo firewall-cmd —zone=public —remove-port=32814/udp

И наконец, для применения всех внесённых изменений, брандмауэр необходимо перезапустить:

$ sudo firewall-cmd —reload

Заключение

Итак, мы рассмотрели установку и запуск межсетевых экранов в операционных системах Linux, таких как Ubuntu, Debian и Centos. А также, мы научились открывать доступ для подключений к нашему серверу через определённые порты и протоколы.

Источник: ruvds.com

Как закрыть порты на сервере?

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

Я написал хостеру, он ответил, что у меня увеличился трафик. Но откуда ему взяться? По моей статистике все оставалось почти так же. Но вот моя панель на хостинге показывала, что через мой сервер часто идет огромный трафик измеряемый в несколько мегабит!

как закрыть порты на сервере

Сейчас на скрине он нормальный, а был в тысячи раз больше. Откуда же он берется? Я запустил команду, чтобы узнать, что там ко мне присоединились?

tcpdump -npi eth0 port domain

И вот что показала мне эта команда:

Источник: prostolinux.ru

Как защитить VDS: от себя, от других, от звезд, что не сошлись на небе

Как защитить VDS

Поговорим о безопасности. О том, как защитить VPS/VDS от злоумышленников извне, желающих поживиться вашими данными, файлами или чем-то более интересным. Выясним, что за приложения вебмастера используют для защиты от распространенных вирусов, как лучше настроить системные файлы и зачем отключать root-доступ.

Поставьте трудноподбираемый пароль

Супербанальный совет, который уже давно стал прописной истиной, но игнорируется большим количеством людей. Причем специалистов, работающих с серверами. Безопасность VDS — их работа. Вебмастера обязаны знать о деятельности взломщиков и потенциальных проблемах. Но тоже забывают о простых правилах.

Читайте также:  Как сделать надпись посередине в Майнкрафт

Защищайте свой сервер сложным паролем:

  • Поставьте пароль длиннее 12 знаков.
  • Впишите туда цифры и допустимые хостингом спецсимволы.
  • Меняйте регистр букв, если провайдер учитывает его при вводе пароля.

Три несложных действия усложнят ваш пароль в разы и сделают VDS заметно безопаснее.

Если лень самим выдумывать сложный пароль, генерируйте его браузером или утилитой в духе LastPass.

Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей

Обновите программное обеспечение сервера

Любое программное обеспечение кишит «брешами» в безопасности. Часть уже обнаружена и исправлена. Часть еще предстоит найти. Благо ищут их как злоумышленники, так и разработчики. Поэтому любая лазейка для хакера находится под постоянной угрозой и может быть заблокирована до того, как будет использована.

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

  • операционную систему сервера,
  • подключенные модули,
  • систему управления данными,
  • панель управления.

Это сокращает риски на взлом.

Удалите ненужные приложения и дополнения для CMS

Если вам не повезло купить VDS с кучей предустановленных программ, то стоит подумать об их удалении. Бывает так, что в комплекте идут модули, пакеты и сервисы, которые не интересуют арендатора. Дополнительные элементы повышают уровень угрозы. Появляется больше точек, куда могут ударить злоумышленники.

Подумайте об удалении «хлама». Оставьте себе необходимый минимум, необходимый для работы сайта. А остальное смело на помойку.

Не храните все файлы в одном месте

На VDS лучше отдельно хранить различные типы данных. Например, создать 4 раздела и хранить в них отдельно:

  1. Файлы, относящиеся к операционной системе.
  2. Пользовательские файлы (все, что не относится напрямую к системным данным).
  3. Временные файлы.
  4. Сторонние приложения, модули, пакеты и иже с ними.

Так можно сократить риски. Взлом или какой-то сбой одного раздела не повлечет за собой потерю данных из других. То есть даже в критической ситуации будут шансы выйти из нее без последствий. Но на самом деле куда большую роль сыграет следующий совет.

Чаще делайте резервные копии

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

Рекомендую выбирать провайдера в духе Таймвэб, который без лишних вопросов с первого дня использования VDS начинает ежедневно копировать данные на случай форс-мажора.

Бэкапы

Если по умолчанию хостинг не делает бэкапы, можно скачать соответствующую программу или использовать сторонние решения. В WordPress есть функция резервного копирования, к примеру.

Смените порт SSH

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

  • Открываем файл /etc/ssh/sshd_config.
  • Находим строчку, в которой прописан порт SSH по умолчанию (22).
  • Меняем на иной (доступный) порт.
  • Сохраняем изменения и закрываем документ.

Отключите лишние порты

Логика такая же, как в случае с лишними модулями и пакетами. Зачем держать на VDS что-то, что может стать угрозой безопасности? Правильно, незачем. Удаляем ненужные приложения, а затем отключаем незадействованные порты.

  • Включаем программу netstat (возможно, перед этим придется ее установить с помощью команды в духе sudo название пакетного менеджера install net-tools).
  • Разыскиваем открытые порты, которые никем и ничем не используются.
  • Потом запускаем программу iptables и через нее закрываем ненужные порты.
  • При желании запускаем chkconfig и в ней глушим разные ненужные сервисы.
Читайте также:  Что делает хелпер в Майнкрафт

Настройте шифрование

Не поленитесь скачать и настроить на своем сервере утилиту GnuPG. Это бесплатная и несложная в использовании программа для шифрования данных во время их передачи по сети.

При ее использовании все исходящие пакеты шифруются. Получить доступ к ним без ключа не получится. То есть даже если их перехватят по пути, профита с этого злоумышленники не получат. На расшифровку полученной информации уйдут годы. Шансы на успех стремятся к нулю.

Так что не пренебрегайте шифрованием. Шифрование – круто.

Включите Firewall и антивирус

У хороших хостинг-провайдеров всегда по умолчанию включен аналог брандмауэра, блокирующий подозрительные соединения. Также на нем должна работать защита от DDoS-атак.

Файрвол для сервера

Вы со своей стороны можете установить антивирусную защиту. Для Linux есть два бесплатных варианта: Maldet и ClamAV. Приложения развиваются за счет энтузиазма независимых разработчиков. Но это не значит, что он работает хуже платных аналогов. Напротив, сообщество любит оба и постоянно совершенствует, исправляя ошибки и дополняя антивирусы новыми возможностями.

Отключите доступ к директории /boot

Тут хранятся файлы, связанные с ядром Linux. Доступ к ним дает пользователю полномочия, которые он не хотел бы передавать хакерам. Но по умолчанию их можно и просматривать, и менять. Стоит отключить вторую возможность на всякий случай. Нам вряд ли захочется что-то менять в /boot, поэтому запрет не помешает.

А вот планы преступников точно порушит.

Чтобы запретить вносить изменения в директорию /boot:

  • Открываем файл /etc/fstab в любом текстовом редакторе.
  • В конец файла вписываем строчку LABEL=/boot /boot ext2 defaults, ro 1 2
  • Сохраняем документ и закрываем его.

Перенастройте FTP-сервер на безопасный лад

Протокол FTP — это устаревшая технология. Значит, небезопасная. Попытки ее модифицировать и сделать безопаснее не увенчались успехом. Даже FTPS не подходит для VDS, так как не может обеспечить нужный уровень защиты.

Пакеты, идущие по FTP, легко перехватить на стадии передачи. Чтобы защититься от атак извне, надо подключить протокол SFTP. Он шифрует данные клиентов, передающих и принимающих файлы по FTP и сами файлы. Это аналог SSL для FTP.

SFTP

А еще советую отказаться от возможности загружать файлы на FTP-сервер без авторизации. Функционирующие анонимные подключения к FTP — идеальная среда для злоумышленников, заполняющих серверы «мусором».

Скачайте chrootkit

Это тоже антивирус, направленный на выявление вируса под названием rootkit. Он дико опасен, и поэтому стоит обзавестись chrootkit’ом как можно скорее. Он бесплатный, если что. Возможно, еще не раз спасет вашу VDS.

Удалите root-пользователя

У root (sudo, суперпользователя) слишком много полномочий. Он может менять в системе все, что заблагорассудится.

Лучше его вообще отключить и создать себе пользователя с необходимыми правами и сложным паролем.

Чтобы выключить root, надо:

  • Открыть документ /etc/ssh/sshd_config.
  • Найти директиву PermitRootLogin.
  • Заменять слово yes на no.

Главное, перед этим создать другого пользователя с достаточным количеством полномочий для управления VDS.

Пользуйтесь услугами проверенных хостингов

Наиболее толковый совет из всех — выбрать грамотный хостинг. Найдите тот, которому можно доверять. Провайдера с незапятнанной репутацией. В России топ-1 для VDS — это Таймвэб. В том числе из-за доверия со стороны пользователей и поисковиков.

За время работы с этим хостингом проблем у меня не возникло. Да и недорого он мне обошелся. Пользуюсь самым дешевым тарифом на NVMe-диске. Там одноядерный чип на 2.8 ГГц, 1 Гбайт оперативной памяти, 10 Гбайт свободного пространства на диске. Все это вкупе с бесплатным резервным копированием, надежным Firewall и другими средствами безопасности.

Источник: timeweb.com