Порти в будь-якій системі, що знаходиться у спільній ієрархії, грають роль сполучних элментов. Знаючи, який з них відкритий або закритий, додаток з одного вузла можете передати повідомлення такого ж додатком на іншому. Навіщо і як можна отткрыть порт в Linux, розповість ця стаття.
Трохи теорії
Порт виражається числом від 0 до 65535. Багато значення зареєстровані для службових потреб, деякі можна використовувати довільно. Порт визначає собою своєрідне уточнення адреси. Наприклад, деякий ресурс має запущений в себе веб-сервер.
Щоб знати, куди конкретно звернутися, комп'ютер, запитувач з нього інформацію, повинен знати як мінімум IP. Але якщо на ресурсі є кілька різних служб, як зрозуміти, куди саме потрібно переслати запит? Ось тут і стане в нагоді порт. Знаючи його номер, комп'ютер, використовуючи IP-адресу і порт, зможе точно послати запит на сервер.
Складнощі в роботі
З-за того, що багато програм, що використовують порти, не завжди ідеальні в плані безпеки, відкритий порт може бути потенційно уразливим місцем для проникнення і несанкціонованого доступу. Тому потрібно стежити за використанням портів в системі або яким-небудь чином контролювати їх трафік.
Перелік найбільш популярних значень портів
Діапазон номерів від 0 до 1023 служить для використання системними програмами і додатками: 21 - використовується протоколом передачі даних FTP; 22 - служба безпечної оболонки SSH; 23 - Telnet; 25 - протокол для передачі поштових повідомлень; 80 - передача HTTP трафіку. Використовується веб-серверами; 110 - POP3 (ще один поштовий протокол). Дані значення зарезервовані і використовуються системою за замовчуванням. Багато з решти портів можна задіяти на свій розсуд.
Як в Linux перевірити відкриті порти
Для цього є вбудовані інструменти. Вони показують, які порти в Linux відкриті. Перший з них — netstat. Приклад його використання: sudo netstat -ntulp Наступний за самою командою набір ключів являє собою додаткові параметри: -l. Означає, що потрібно показати тільки ті порти, які в даний момент прослуховуються; -p. Більш докладне відображення інформації про програму, що використовує порт. Зокрема, відображено його назву та ідентифікатор процесу; -t. Включити в список TCP порти; -u. Те ж саме, тільки з UDP; -n. Означає, що IP адреси будуть показані у вигляді чисел.
Як відкрити порт в Linux
Дана процедура може знадобиться в процесі розробки будь-якого веб-додатки, яка має зв'язок із зовнішнім сервером. Перед тим як відкрити порт, потрібно спочатку перевірити, чи не є він вже відкритим. У цьому допоможе процедура, представлена вище.

Для відкриття використовується утиліта iptables. Щоб перевірити, чи є вона взагалі в системі, потрібно набрати в консолі команду: iptables --list В результаті відобразиться висновок, що говорить про те, що утиліта працює і є в системі. Тепер залишилося відкрити порт в Linux. Для цього використовується команда: iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT Тут ключ А означає, що потрібно додати нове правило в існуючу ланцюжок. INPUT показує, що відкритий порт буде входять. Ключ -p каже, що далі вказується тип протоколу, в даному випадку TCP. Dport означає порт призначення, тут - 53. Ну і ACCEPT — дозволяють з'єднання. Насправді ключів у iptables набагато більше, що відкриває широкі можливості для більш тонкої настройки і способів відкрити порт в Linux.