Почти всички потребители на дистрибуцията CentOS 7 инсталират различни инструменти в системата, за правилната работа на които е необходимо да се отворят портове с определени номера. Това е необходимо, за да се осигури нормална комуникация с възли и сигурен обмен на информация. Задачата се извършва чрез промяна на правилата на защитната стена. Разбира се, всеки потребител може да използва голямо разнообразие от защитни стени, но стандартът е iptables... На неговия пример предлагаме да отворим портове, следвайки инструкциите по-долу.
Отваряне на портове на CentOS 7
Отварянето на портове е проста задача, тъй като трябва да въведете само няколко команди в конзолата. Ако обаче първоначално не сте направили допълнителни настройки с защитна стена или използвате инструмент на трета страна, ще трябва допълнително да промените важни параметри. Затова разделихме статията си на етапи, за да бъде по-лесно за начинаещите потребители да разберат всяка стъпка и сега ще започнем с директната инсталация. iptables на CentOS 7.
Стъпка 1: Инсталиране или актуализиране на iptables
Както е споменато по-горе, iptables действа като защитна стена по подразбиране на CentOS 7. Ако не сте направили никакви ръчни промени, можете спокойно да пропуснете тази стъпка и да завършите само последната стъпка с инсталиране на помощните програми на защитната стена. Ако трябва да проверите за актуализации или да преинсталирате този инструмент, препоръчваме да използвате следното ръководство.
- Всички описани днес действия ще бъдат извършени в "Терминал"така че всичко започва с пускането му. Използвайте клавишната комбинация за това Ctrl + Alt + T или икона, добавена към раздела Любими в менюто на приложението.
- Тук въведете командата
sudo yum инсталирайте iptables
и след това натиснете клавиша Въведете. - За да потвърдите тази команда, ще трябва да предоставите парола за суперпотребител. Моля, обърнете внимание, че този тип правопис не показва въведените символи.
- Ще бъдете уведомени, че инсталацията или актуализацията са успешни. Ако най-новата версия вече е добавена към операционната система iptables, редът ще се появи на екрана "Няма какво да се прави".
- Изпълнете тази стъпка с командата
sudo yum -y инсталирайте iptables-услуги
... Това ще започне инсталирането на необходимите услуги. - Можете да преминете към следващата стъпка, ако на екрана се появи съобщение, указващо, че компонентите са добавени успешно.
Стъпка 2: Нулирайте стандартните правила на защитната стена
Ако системният администратор или потребител преди това не е направил настройки iptables, настройките по подразбиране трябва да бъдат нулирани, за да се избегнат бъдещи проблеми със съвместимостта на правилата. Освен това ще трябва да посочите стандартни правила, за да осигурите правилното изпълнение на входящите и изходящите връзки. Всичко става така:
- Въведете командата в конзолата
iptables -L -v -n
, за да видите списък с текущите настройки. - Ако те не ви устройват, ще трябва да извършите нулиране и ръчно конфигуриране.
- Премахването на съществуващите правила се извършва само с един ред
sudo iptables -F
. - След това разрешете цялото въвеждане на сървъра чрез вмъкване
sudo iptables -A INPUT -i lo -j ПРИЕМ
. - Почти същата команда е приложима за изходящи връзки:
sudo iptables -A ИЗХОД -o lo -j ПРИЕМ
. - Препоръчително е да ограничите новите връзки и да позволите на съществуващите да осигурят сигурност и да направят горните правила да работят. Това се случва чрез
sudo iptables -A INPUT -m състояние - състояние УСТАНОВЕНО, СВЪРЗАНО -j ПРИЕМ
.
Всички допълнителни настройки на разглежданата помощна програма се извършват ръчно от потребителя, включително отваряне на портове. Ще говорим за последната тема в следващите стъпки, а разширената конфигурация е извън обхвата на днешния материал. Вместо това препоръчваме да разгледате конкретни уроци по тази тема, като използвате връзката по-долу.
Повече информация: Настройване на iptables на CentOS 7
Стъпка 3: Деактивирайте FirewallD
Тази стъпка трябва да бъде обмислена от тези потребители, които преди са инсталирали FirewallD или е била добавена автоматично.Когато конфигурирате портове чрез iptables, този инструмент може да попречи на правилното изпълнение на правилата, така че трябва да го деактивирате.
- Първо спрете изпълнението на услугата чрез
sudo systemctl спиране на защитната стена
. - След това направете пълно изключване с помощта на командата
sudo systemctl деактивира защитната стена
. - Ще получите информация, че символните връзки са премахнати, следователно FirewallD не работи отсега.
Ако искате ръчно да изтриете папки, съдържащи настройки на FirewallD, като пропуснете горните команди, поставете "Терминал" на свой ред редовете отдолу и ги активирайте.
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'
В бъдеще всеки потребител може да се наложи да активира и конфигурира допълнително FirewallD, особено когато трябва да работи с различни уеб сървъри и помощни програми. Предлагаме да направите това, като използвате ръководството по-долу.
Повече информация: Конфигуриране на защитна стена на CentOS 7
Стъпка 4: отваряне на портове чрез iptables
Време е да извършите основното действие, за което става дума в днешната статия. По-горе направихме абсолютно цялата подготвителна работа за отваряне на портове в CentOS 7. Сега това не би трябвало да създава проблеми, така че можете да въведете следните команди.
- Не забравяйте да добавите защитната стена към стартиране, за да не я стартирате ръчно през цялото време. Това ще помогне на командата
sudo systemctl активира iptables
. - Ще бъдете известени, когато бъде създадена символична връзка.
- Активирайте постоянните права на суперпотребител, като въведете
су
така че за всяка команда тази терминална сесия не е необходимо да се задава судо. - Потвърдете това действие, като напишете паролата си.
- Отворете порта чрез команда
iptables -I INPUT -p tcp --dport 22 -m състояние - състояние НОВО -j ПРИЕМ
където 22 заменете с необходимия номер. - Можете веднага да отворите следващия порт, например, под номера 25 (SMTP сървър). За да направите това, въведете
iptables -I INPUT -p tcp --dport 25 -m състояние - състояние НОВО -j ПРИЕМ
. - Запазете всички промени, като вмъкнете реда
услуга iptables запишете
. - Ще бъдете уведомени, че конфигурацията е приложена успешно.
- Рестартирайте защитната стена, за да влязат в сила всички промени. Това става чрез командата
systemctl рестартирайте iptables
. - В края предлагаме да използвате
sudo iptables -nvL
за да изследва всички отворени портове.
В тази статия научихте всичко за отварянето на портове в CentOS 7. Както можете да видите, това не отнема много време и всички промени ще бъдат приложени веднага след рестартиране на услугите. Използвайте горните команди, променяйки само номерата на портовете, така че всичко да върви добре.