- Как открыть порт vps linux
- Настройка VPN
- VPN сервер на VPS
- Настройка проброса HTTP, HTTPS и SSH трафика.
- Настройка домашнего сервера
- Открытие портов в Linux
- Открываем порты в Linux
- Шаг 1: Установка Iptables и просмотр правил
- Шаг 2: Разрешение обмена данными
- Шаг 3: Открытие необходимых портов
- Открываем порт в Linux с помощью firewalld
- Файрвол и отсутствие соединения
- Почему так происходит
- Установка firewalld
- Как проверить, что порт закрыт именно файрволом?
- Открываем порт для внешних соединений всем пользователям
- Гайд Как открыть порт в Linux? Очень просто!
- FIELD LINE
Как открыть порт vps linux
Тут я выяснил, что купить выделенный сервер стоит очень дёшево. По крайней мере дешевле, чем купить выделенный белый IP у моего провайдера. Ну раз такое дело, то я решил отказаться от белого IP и дать доступ к своим домашним веб сереверам (nextcloud и git сервер) при помощи выделенного сервера. К тому же теперь можно не зависить от провайдера, а раздавать интернет для домашнего сервера хоть через телефон.
VPS (от англ. Virtual Private Server) виртуальный сервер, который создается средствами виртуализации на физическом сервере, который в свою очередь находится в дата-центре провайдера VPS. Таких провайдеров очень много. К VPS даётся доступ по SSH под root пользователем. Можно выбрать разные операционные системы. У меня Ubuntu 18.04.
Критерием выбора VPS была цена. Чем дешевле, тем лучше, так как у такого сервера в моём случае будет только одна задача: перенаправлять трафик пришедший на белый IP VPS по VPN тунелю на мой домашний Raspberry Pi компьютер.
Действительно, всего за 130 рублей в месяц у меня есть VPS с 512 МБ оперативной памяти и 10 ГБ места на HDD. Этого с лихвой хватит на перенаправление трафика. А учитывая, что мой провайдер просит 180 рублей просто за выделенный IP, то это очень выгодная покупка.
Теперь осталось настроить VPS.
Настройка VPN
VPN сервер на VPS
В качестве VPN я выбрал старый добрый PPTP. Говорят у него проблемы с шифрованием, но для меня это не имеет значение, т.к. пробрасывать по тунелю я буду HTTPS трафик, который уже и так шифрованный.
Установим PPTP сервер.
В интернете много руководств по настройке VPN в Linux. Я просто приведу свои основные конфиги:
/etc/pptpd.conf
/etc/ppp/pptpd-options
Поскольку у меня дома интернет подаётся через pppoe, то необходимо уменьшить mtu вложенного туннеля, который мы пытаемся настроить. Для этого в файле /etc/ppp/options прописываем
А в файле /etc/ppp/ip-up в посленей строке прописывается соответствующее mtu
Возможно я что-то напутал, однако после этих настроек у меня прекратились постоянные обрывы соединения.
В файле /etc/ppp/chap-secrets указывается логин и пароль для подключения клиентов VPN.
Сервер запускается коммандой pptpd. После этого при подключении клиента поднимается новый сетевой интерфейс ppp0. У VPS будет IP 192.168.1.1, а у домашнего сервера 192.168.1.2.
Настройка проброса HTTP, HTTPS и SSH трафика.
Удалим на всякий случай имеющийся в Ubuntu файрвол ufw.
Следующий скрипт — это настройка iptables. iptables — это программа для перенапрвления и фильтрации IP трафика в Linux. В первых строках нужно вписать ваши параметры.
Сохраняем этот скрипт в файл, даём этому файлу разрешение на исполнение и исполняем. В итоге мы получим перенаправление HTTP и HTTPS трафика, а также пакетов на порт 2222, который я использую для подключения по SSH к домашнему серверу. Кроме того, у домашнего сервера будет доступ в интернет с белого IP адреса VPS.
И pptpd и настройки iptables не сложно поставить в автозагрузку, но я этого пока не делал.
Настройка домашнего сервера
Настроим файрвол при помощи всё тогоже iptables.
Источник
Открытие портов в Linux
Безопасное соединение узлов сети и обмен информацией между ними напрямую связан с открытыми портами. Подключение и передача трафика производится именно через определенный порт, а если в системе он закрыт, выполнить такой процесс не представится возможным. Из-за этого некоторые пользователи заинтересованы в пробросе одного или нескольких номеров для наладки взаимодействия устройств. Сегодня мы покажем, как выполняется поставленная задача в операционных системах, основанных на ядре Linux.
Открываем порты в Linux
Хоть во многих дистрибутивах по умолчанию присутствует встроенный инструмент по управлению сетями, все же такие решения часто не позволяют в полной мере осуществить настройку открытия портов. Инструкции данной статьи будут основаны на дополнительном приложении под названием Iptables — решение для редактирования параметров межсетевого экрана с использованием прав суперпользователя. Во всех сборках ОС на Линуксе она работает одинаково, разве что отличается команда для установки, но об этом мы поговорим ниже.
Если вы хотите узнать, какие из портов уже открыты на компьютере, вы можете воспользоваться встроенной или дополнительной утилитой консоли. Детальные инструкции по поиску необходимой информации вы найдете в другой нашей статье, перейдя по следующей ссылке, а мы же приступаем к пошаговому разбору открытия портов.
Шаг 1: Установка Iptables и просмотр правил
Утилита Iptables изначально не входит в состав операционной системы, из-за чего ее нужно самостоятельно инсталлировать из официального репозитория, а уже потом работать с правилами и всячески изменять их. Установка не занимает много времени и выполняется через стандартную консоль.
- Откройте меню и запустите «Терминал». Сделать это также можно, используя стандартную горячую клавишу Ctrl + Alt + T.
Активируйте права суперпользователя, написав пароль от своей учетной записи. Обратите внимание, что символы во время ввода не отображаются, сделано это для обеспечения безопасности.
Ожидайте завершения инсталляции и можете убедиться в активности работы инструмента, просмотрев стандартный список правил, задействовав sudo iptables -L .
Как видите, в дистрибутиве теперь появилась команда iptables , отвечающая за управление одноименной утилитой. Еще раз напомним, что работает этот инструмент от прав суперпользователя, поэтому в строке обязательно должна содержаться приставка sudo , а уже потом остальные значения и аргументы.
Шаг 2: Разрешение обмена данными
Никакие порты не будут нормально функционировать, если утилита запрещает обмен информацией на уровне собственных правил межсетевого экрана. Кроме всего, отсутствие необходимых правил в дальнейшем может вызывать появление различных ошибок при пробросе, поэтому мы настоятельно советуем выполнить следующие действия:
- Убедитесь, что в конфигурационном файле отсутствуют какие-либо правила. Лучше сразу же прописать команду для их удаления, а выглядит она так: sudo iptables -F .
Теперь добавляем правило для вводимых данных на локальном компьютере, вставив строку sudo iptables -A INPUT -i lo -j ACCEPT .
Примерно такая же команда — sudo iptables -A OUTPUT -o lo -j ACCEPT — отвечает за новое правило для отправки информации.
Осталось только обеспечить нормальное взаимодействие указанных выше правил, чтобы сервер смог отправлять обратно пакеты. Для этого нужно запретить новые соединения, а старые — разрешить. Производится это через sudo iptables -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT .
Благодаря указанным выше параметрам вы обеспечили корректную отправку и прием данных, что позволит без проблем взаимодействовать с сервером или другим компьютером. Осталось только открыть порты, через которые и будет осуществляться то самое взаимодействие.
Шаг 3: Открытие необходимых портов
Вы уже ознакомлены с тем, по какому принципу добавляются новые правила в конфигурацию Iptables. Существуют и несколько аргументов, позволяющих открыть определенные порты. Давайте разберем эту процедуру на примере популярных портов под номерами 22 и 80.
- Запустите консоль и введите туда две следующие команды поочередно:
sudo iptables -A INPUT -p tcp —dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp —dport 80 -j ACCEPT .
Теперь проверьте список правил, чтобы убедиться в том, что порты были успешно проброшены. Используется для этого уже знакомая команда sudo iptables -L .
Придать ей читабельный вид и вывести все детали можно с помощью дополнительного аргумента, тогда строка будет такой: sudo iptables -nvL .
Поменяйте политику на стандартную через sudo iptables -P INPUT DROP и можете смело приступать к работе между узлами.
В случае когда уже администратор компьютера внес свои правила в инструмент, организовал сброс пакетов при подходе к точке, например, через sudo iptables -A INPUT -j DROP , вам нужно использовать другую команду sudo iptables: -I INPUT -p tcp —dport 1924 -j ACCEPT , где 1924 — номер порта. Она добавляет необходимый порт в начало цепи, и тогда пакеты не сбрасываются.
Далее вы можете прописать все ту же строку sudo iptables -L и убедиться в том, что все настроено корректно.
Теперь вы знаете, как пробрасываются порты в операционных системах Linux на примере дополнительной утилиты Iptables. Советуем обязательно следить за появляющимися строками в консоли при вводе команд, это поможет вовремя обнаружить какие-либо ошибки и оперативно устранить их.
Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник
Открываем порт в Linux с помощью firewalld
Файрвол и отсутствие соединения
Итак, вы купили VDS (виртуальный сервер), установили какой-то сервис, например ftp (File Transfer Protocol — протокол передачи файлов) и у вас не проходят соединения на сервер из внешней сети Интернет, но локально в консоли всё работает. Это означает, что порт скорее всего закрыт файрволом от внешних соединений в целях безопасности.
Почему так происходит
По умолчанию большинство портов закрыто межсетевым краном от внешних соединений в целях безопасности. Системный администратор должен стараться по-максимуму ограничивать доступ к сервисам из вне. Например, в большинстве случаев доступ к СУБД (Система управления базами данных) закрыт для внешних IP-адресов. Если какому-то серверу из вне нужен доступ, то его открывают только для заданного IP-адреса или подсети. Разумно ограничить доступы межсетевым экраном ко всем внутренним службам, которые не должны быть доступны любому пользователю Интернет.
Установка firewalld
Как проверить, что порт закрыт именно файрволом?
Открываем порт для внешних соединений всем пользователям
Это очевидный, но не самый лучший вариант. Он подойдёт вам, если нужно открыть какой-то конкретный порт. Если же задача разрешить сервис, то лучше подойдёт команда:
Пока эти команды только изменили текущую конфигурацию файрвола, но эти настройки не вступили в силу. Чтобы они заработали, нужно перезагрузить файрвол мягко без разрыва текущих соединений.
И если эти настройки нам нужны постоянно, то есть и после перезагрузки сервера, то нужно их сохранить.
При выполнении команд можно использовать опцию —permanent, чтобы настройки сразу сохранялись глобально. Но лучше так не делать, потому что вы не можете быть на 100% уверены, что ваши команды приведут к задуманному результату. Поэтому вы сначала добавляете настройки в текущую конфигурацию, перезагружаете файрвол, проверяете, что всё работает как требуется и только после тестирования сохраняете настройки глобально. Важно, конечно, не забыть их сохранить, а то после перезагрузки сервера будут проблемы.
Кстати, это распространённая ошибка системных администраторов, что сервер не устойчив к перезагрузкам. Некоторые системные администраторы любят хвастаться UPTIME в не сколько лет. Но у этого есть и обратная сторона, что они не могут быть уверены, что какие-то их команды не носят временный характер до ближайшей перезагрузки.
Источник
Гайд Как открыть порт в Linux? Очень просто!
FIELD LINE
Статья рассчитана на новичков, использующих Linux.
Многие новички сталкиваются с проблемой после создания игрового сервера на личном выделенном сервере или vds, используя Linux.
Сервер запускается, но порт закрыт, я не могу к нему подключиться. Что же делать?
Нужно прописать правила Firewall’а, что бы нужный порт был открыт.
Для начала немного теории. Сервера по Counter-Strike, абсолютно всех версий, используют 2 протокола, TCP и UDP.
Значит нужно 2 правила для Iptables, что бы открыть порт.
Вопрос: Что такое Iptables?
Ответ: Iptables это самый распространенный и используемый Linux Firewall, для защиты, фильтрации, проброса портов, и многого другого. Подробнее можете почитать в wikipedia.
Допустим, у вас Counter-Strike 1.6 сервер, и вы хотите открыть порт 27015. Для этого пропишите в терминал 2 правила.
Первое правило для открытия протокола TCP на порте 27015, а второе правило для открытия протокола UDP на порте 27015.
Другой небольшой пример:
Стандартный порт ssh в Linux находится на 22’ом порте, но использует только протокол TCP. Как же открыть стандартный порт ssh?
Что бы его открыть, нужно прописать очень простое правило Iptables, но для порта 22 только на протоколе TCP. Открывать порт на протоколе UDP в данной ситуации не нужно.
Введите в терминал данное правило Iptables:
Дополнительно:
Как открыть нужные порты в Linux для сервера по игре RUST?
Типичный вопрос пользователя: Столкнулся с проблемой! Запустил сервер по игре RUST, но не могу к нему подключиться, сервер вообще не виден. Помогите!
Ответ: Сервер по игре RUST использует сразу 2 игровых порта. Первый порт служит для подключения клиента к серверу, второй служит для rcon администрирования.
Стандартный порт по игре RUST 28015 использующий протоколы TCP и UDP, второй порт для администрирования 28016 использует только протокол TCP.
Для того, что бы открыть нужный порт по игре RUST, введите в терминал следующие правила:
Источник