Описывается как настроить gateway сервер (шлюз) на Linux для центра обработки данных на VMware vSphere. Дается инструкция с объяснениями и рисунками по настройке сервера SSH и интерфейсов. Вторая часть статьи “Как сделать gateway сервер (шлюз) на Linux для центра обработки данных“.
Мы только что добавили виртуальную машину с небольшими рессурсами и множеством сетевых интерфейсов в центр обработки данных на VMware vSphere, на которой мы будем пытаться настроить gateway сервер (шлюз) на Linux. После чего мы установили операционную систему Cent OS Linux и организовали безопасное соединение ssh к серверу с управляющего компьютера (см. “Что такое ssh/sftp и для чего он нужен?” для OS Linux (OSX) или “SSH клиент для Windows PuTTY” и “Клиент SSH для Windows Bitvise Tunnelier” для Windows). Продолжим создание шлюза.
Сейчас я поменяю управляющий компьютер на ОС Windows на компьютер с Linux или MAC OSX, поскольку дальнейшую настройку будем вести с терминала через безопасное соединение ssh. И вам того же советую.
Как настроить gateway сервер (шлюз) на Linux. SSH сервер
Первым делом настроим SSH сервер, как это описано в “Как настроить сервер SSH“. Выберем для примера имя пользователя admin. Выберите что-нибудь другое. После завершения настройки вход на сервер должен осуществляться командой в виде
ssh admin@ip сервера
И в то же время вход под суперпользователем root должен быть запрещен.
Теперь нам надо сделать еще одну настройку, связанную в сервером SSH, который работает на нашем шлюзе. Защититься от DDOS-атак. Атака DDOS осуществляется множеством одновременных подключений к сервису сервера, что вызывает трудности для пользователей при работе с этим сервисом. Поэтому, ограничим число возможных одновременных подключений к серверу через защищенный канал ssh.
- Открываем безопасное соединение с сервером. Как это сделать см. “Что такое ssh/sftp и для чего он нужен?” для OS Linux (OSX) или “SSH клиент для Windows PuTTY” и “Клиент SSH для Windows Bitvise Tunnelier” для Windows.
- Становимся суперпользователем root (см. «Команды Linux. Краткое описание.«)
$su - При помощи текстового редактора vi вносим изменения в файл брандмауэра (firewall) (подробнее см. “Редактор vi. Краткая инструкция“):
#vi /etc/sysconfig/iptables
Находим строку, которая разрешает подключение к порту 22(ssh) и вставляем в нее ограничение в виде
-m limit --limit 3/m
это загрузит модуль ограничения подключений к порту и установит лимит 3 в минуту. Можно задать любое разумное ограничение. Я обычно задаю ограничение 3 или 5 подключений в минуту. Должно быть как на рис. 1. Сохраняем измененный файл и выходим из редактора. - Перегружаем брандмауэр:
# /etc/init.d/iptables restart
Если при вводе ошибок не было, то должно быть как на рис. 2.
Как запретить запуск ненужных для шлюза на Linux сервисов
Не смотря на то, что мы только что установили минимальную версию операционной системы, она все рано универсальная и предназначена для решения множества различных задач и обладает избыточностью для gateway сервер (шлюз) на Linux. Причем, по моим подсчетам, необходимо только 54 пакета вместо 203 установленных. Остальные мы использовать не будем.
Если быть совсем параноиком, или наш центор обработки данных будет иметь дело с очень ценной или конфиденциальной информацией, то надо сделать свою подверсию Cent OS Linux, которая бы состояла только из используемых пакетов. Такая версия будет существенно надежнее и безопаснее, чем то, что мы установили. Чем меньше пакетов – тем меньше потенциальных дыр и возможностей для взлома. Но это сейчас выходит за рамки данной статьи. Мы просто не будем запускать при старте системы те сервисы, которые нам не нужны для gateway сервер (шлюз) на Linux. Ну и несколько все же удалим.
- Открываем безопасное соединение с сервером.
- Становимся суперпользователем root:
$su - Смотрим, какие сервисы запускаются при старте системы:
#/sbin/chkconfig
Результат выполнения команды показан на рис. 1.
- На рис. 1. показаны все сервисы, которые зарегистрированы и запускаются при старте системы. Нас интересует колонка с префиксом “3:” – мультизадачный режим (нормальный) работы сервера. “On” означает, что сервис будет запущен при переходе в мультизадачный режим. “Off” – не будет. Я подчеркнул красным те сервисы, которые нам не нужны в для работы gateway сервер (шлюз) на Linux.
- Для начала, просто удалим некоторые пакеты с ненужными сервисами. Для этого надо определить, какой пакет содержит тот или иной сервис. Например, iscsi:
#rpm -qf /etc/init.d/iscsi
Пакет, который содержит iscsi сервис называется iscsi-initiator-utils. Удалим его:
#rpm -e iscsi-initiator-utils
Результат показан на рис. 2. - Если мы не используем ipv6, то удалим бранмауэр (firewall) и запретим использование ipv6 на сервере (Рис. 3.)
Как мы видим, удалить несколько сложнее, поскольку есть еще один пакет, который от него зависит. Это system-config-firewall-base. Мы его использовать не так же будем. Удаляем оба:
#rpm -e iptables-ipv6 system-config-firewall-base
Теперь необходимо совсем запретить ipv6 на сервере. При помощи редактора vi открываем файл /etc/sysctl.conf (подробнее см. “Редактор vi. Краткая инструкция“):
#vi /etc/sysctl.conf
и добавляем в конец строчки:
# Disable IPv6 jn the server
net.ipv6.conf.all.disable_ipv6 = 1
И перегружаем переменные, которые заданы в /etc/sysctl.conf
#/sbin/sysctl -p
Должны получить, как на рис. 4.Если мы ввели все правильно, то должна появиться строчка, которая подчеркнута.
- Аналогично удаляем сервисы mdmonitor
- Некоторые сервисы удалить сложно, поскольку в пакеты входят необходимые для работы шлюза модули. Тогда мы просто запрещаем из запуск. Например:
#/sbin/chkconfig netfs off - В конце концов должна получиться минимизированная конфигурация сервисов, как на рис. 5.
Как настроить gateway сервер (шлюз) на Linux. Интерфейсы
Теперь будем последовательно включать все интерфейсы. Начнем с eth2, который мы уже сейчас используем. Надо существенно изменить его параметры, поскольку автоматическая генерация параметров сделала это не очень хорошо. Много лишней информации и информации, которая дублирует параметры, заданные в других местах.
- Открываем безопасное соединение с сервером.
- Становимся суперпользователем root:
$su - При помощи текстового редактора vi открываем файл параметров eth2:
# vi /etc/sysconfig/network-scripts/ifcfg-eth2 - Он должен быть как ра рис. 8.:
- Теперь сделаем его как на рис. 9.:
- Проверяем, нет ли ошибок, сохраняем файл и завершаем редактирование.
- Перегружаем сеть:
# /etc/init.d/network restart
Должно быть, как на рис. 10. - Все. Теперь получилось правильно.
Следующий интерфейс будет eth1, который должен быть подключен к виртуальной сети “DB Net” (см. “Как создать виртуальный коммутатор vSphere“). Мы так же отредактируем файл параметров интерфейса /etc/sysconfig/network-scripts/ifcfg-eth1, чтобы он выглядел так же, как на рис. 9., только DEVICE=”eth1″ и адрес IP должен быть из табл. 3 статьи “Как сделать gateway сервер (шлюз) на Linux для центра обработки данных“. Параметр “HWADDR” не трогаем.
Поднимаем eth1:
# /sbin/ifup eth1
Повторяем процесс для всех остальных интерфейсов.
Как только установили параметры для всех интерфейсов, надо проверить, что все получилось. Начнем с того, что сделаем ping какого-нибудь известного сайта. Например,
# ping -c 4 www.corel.com
Если получили результат, как на рис. 11, то все прекрасно.
Что мы имеем. Сразу два в одном флаконе. Мы убедились, что:
- работает разрешение доменных имен в IP адреса. Мы получили IP адрес 23.78.32.205 для www.corel.com
- проходят сигналы во внешний мир и возвращаются обратно.
То есть, подключение к интернету работает!
Если результат другой, то надо попробовать сделать ping для каких-нибудь других сайтов. Некоторые сайты на ping не отвечают и вообще делают вид, что их нет. Если ответа не будет для многих сайтов, то надо определить, что не работает: разрешение доменных имен или не проходят сигналы. Для этого надо сделать ping по IP адресу известного сайта, на который проходит ping с другого компьютера. И дальше действовать по результату.
Теперь наш gateway сервер (шлюз) на Linux подключен к интернету. Продолжим настройку. Следующий шаг – установка VMware Tools.
Описано как настроить gateway сервер (шлюз) на Linux. Дана инструкция с объяснениями и рисунками по настройке сервера SSH и интерфейсов.
No comments yet.