Как открыть порты 80 и 443 для сайта
Хочу себе такие же кнопкиОткрываем порты 80 и 443 для вашего сайта за 5 минут
Что вы получите:
- Понимание, зачем нужны порты 80 (HTTP) и 443 (HTTPS).
- Пошаговый план, как открыть их на сервере VDSina, используя iptables, ufw и firewalld.
- Как проверить, что порты действительно открыты, и какие типичные ошибки могут помешать работе сайта.
Почему это важно? Если ваш сайт «невидим» в сети, значит, браузер не может «звонить» вашему серверу по нужным «телефонам» (портам). Открыв их, вы даёте клиентам доступ к вашему веб‑контенту.
1. Что такое порт и зачем они нужны
| Термин | Описание | Пример |
|---|---|---|
| Порт | Виртуальный «вход» в сеть, через который приложение принимает данные. | Порт 80 — HTTP, порт 443 — HTTPS |
| IP‑адрес | Уникальный «домашний номер» вашего сервера в интернете. | 185.12.34.56 |
| Фавол | Программный «охранник», который решает, какие порты открыты, а какие закрыты. | iptables, ufw, firewalld |
Аналогия: представьте, что сервер дом, а порты — двери. Порт 80 это обычная входная дверь, а порт 443 — дверь с охраной (шифрование). Если двери закрыты, гости (браузеры) не могут войти.
2. Почему именно 80 и 443
- 80 – протокол HTTP (незашифрованный). Большинство старых сайтов и API всё ещё используют его.
- 443 – протокол HTTPS (шифрованный TLS/SSL). Современные браузеры помечают сайты без HTTPS как «незащищённые».
Если хотя бы один из этих портов закрыт, пользователи увидят ошибку «Сайт недоступен» или «Не удалось установить безопасное соединение».
3. Как открыть порты в Linux‑окружении VDSina
3.1. Проверяем текущие правила фавола
# iptables
sudo iptables -L -n -v
# ufw (если установлен)
sudo ufw status verbose
# firewalld
sudo firewall-cmd --list-all
Если в выводе нет строк с ACCEPT для 80/tcp и 443/tcp, значит, порты закрыты.
3.2. Открываем порты с помощью iptables
# Разрешаем входящие соединения на 80 и 443
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# Сохраняем правила (на Ubuntu/Debian)
sudo apt-get install -y iptables-persistent
sudo netfilter-persistent save
Важно: Если у вас уже есть правило
DROPв конце цепочкиINPUT, новые правила должны стоять выше его, иначе они не сработают.
3.3. Открываем порты с помощью ufw (Uncomplicated Firewall)
# Включаем ufw, если он ещё выключен
sudo ufw enable
# Разрешаем HTTP и HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# Проверяем статус
sudo ufw status numbered
3.4. Открываем порты с помощью firewalld (CentOS/RHEL)
# Добавляем правила в зону public (по умолчанию)
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
# Применяем изменения
sudo firewall-cmd --reload
# Проверяем
sudo firewall-cmd --zone=public --list-ports
3.5. Быстрый чек: telnet и curl
# С другого компьютера
telnet <ваш_ip> 80
telnet <ваш_ip> 443
# Если соединение установлено, вы увидите что‑то вроде:
# Trying 185.12.34.56...
# Connected to 185.12.34.56.
# Или через curl
curl -I http://<ваш_ip>
curl -I https://<ваш_ip>
Если получаете Connection refused или таймаут, значит, порт всё ещё закрыт.
4. Открываем порты в веб‑панели VDSina
VDSina предоставляет удобную панель управления (см. VDSina панель управления). В ней есть раздел «Брандмауэр» (или «Firewall»).
- Войдите в личный кабинет VDSina.
- Перейдите в «Серверы» → ваш сервер → «Брандмауэр».
- Нажмите «Добавить правило».
- В поле «Порт» введите
80и выберите протокол TCP → «Разрешить». Сохраните. - Повторите то же самое для порта
443.
Подсказка: Если у вас уже включён «Стандартный набор правил», просто активируйте галочки рядом с HTTP и HTTPS.
5. Как проверить, что ваш сайт действительно доступен из интернета
| Инструмент | Что делает | Как использовать |
|---|---|---|
| https://www.yougetsignal.com/tools/open-ports/ | Проверяет открытость порта из разных точек мира | Введите ваш IP и порты 80/443 |
| https://www.ssllabs.com/ssltest/ | Тестирует HTTPS‑соединение и сертификат | Введите домен, привязанный к серверу |
| curl -I (локально) | Скачивает только заголовки | curl -I http://example.com |
Если оба порта открыты и браузер показывает ваш сайт без ошибок, работа завершена.
6. Частые ошибки и как их избежать
| Ошибка | Причина | Как исправить |
|---|---|---|
| Порт закрыт после перезагрузки | Правила не сохранены в постоянный конфиг | Для iptables используйте iptables-persistent, для ufw – правило сохраняется автоматически, для firewalld – --permanent. |
| Конфликт с другим фаволом | На сервере одновременно работают iptables и ufw |
Отключите один из них (sudo ufw disable или sudo systemctl stop firewalld). |
| Сертификат SSL не установлен | Порт 443 открыт, но HTTPS‑трафик не обслуживается | Установите сертификат (Let's Encrypt, Certbot) и настройте веб‑сервер (nginx/apache). |
| IP‑блокировка в облаке | VDSina может иметь «Network ACL», блокирующий порты | Проверьте раздел «Сетевые правила» в панели 🏰 VDSina и разрешите 80/443. |
7. Мини‑чек‑лист «5 минут для готовности»
- [ ] iptables:
sudo iptables -L -n | grep 80иgrep 443→ACCEPT. - [ ] ufw:
sudo ufw status→80/tcp ALLOW,443/tcp ALLOW. - [ ] firewalld:
sudo firewall-cmd --list-ports→80/tcp 443/tcp. - [ ] Панель VDSina: правило «HTTP» и «HTTPS» включены.
- [ ] Тест:
curl -I http://<IP>иcurl -I https://<IP>возвращают200 OK.
Если все галочки отмечены, ваш сайт готов принимать посетителей!
Практика для закрепления
-
Теория – объясните своим словами, почему порт 443 считается «безопасным», а порт 80 «незащищённым». Приведите пример реального сценария, где использование только 80 может привести к проблемам.
-
Команды – выполните на тестовом сервере (можно в виртуальной машине) следующие команды и сделайте скриншот вывода:
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw status numberedЧто изменилось в списке правил?
-
Тестирование – используя онлайн‑службу YouGetSignal, проверьте открытость портов вашего сервера. Сохраните ссылку на результат и коротко опишите, что вы увидели.
-
Отладка – представьте, что после открытия портов ваш сайт всё ещё не открывается. Составьте план из трёх шагов, как вы будете искать причину (например, проверка веб‑серверов, логов, DNS).
-
Автоматизация – напишите простой Bash‑скрипт, который проверяет, открыты ли порты 80 и 443, и в случае их закрытости автоматически открывает их через
ufw. Приведите код и объясните каждую строку.
Готово! Вы теперь знаете, как «открыть двери» вашего сервера для веб‑трафика, проверили их работу и умеете быстро находить и исправлять типичные проблемы. Если захотите углубиться в настройку SSL‑сертификатов или автоматизацию развертывания, обратитесь к следующему уроку «HTTPS за 5 минут». Удачной публикации сайта!
Введение: чем VDS отличается от шаред-хостинга и зачем это веб-мастеру
Как правильно выбрать тариф: CPU, RAM, NVMe или SSD, канал
Выбор операционной системы: почему Ubuntu 22.04/24.04 — стандарт индустрии
Регистрация домена и первичная настройка DNS-записей (A, AAAA, CNAME)
Генерация SSH-ключей на локальном компьютере (Windows/Mac/Linux)
Добавление публичного ключа на сервер и первый вход по SSH
Отключение входа по паролю и запрет авторизации для root
Смена стандартного порта SSH для снижения шума в логах
Создание основного рабочего пользователя с правами sudo
Базовое обновление системы и установка необходимых утилит (curl, wget, git, htop)
Настройка часового пояса и синхронизация времени (NTP)
Установка и базовая настройка фаервола UFW
Разрешение только необходимых портов (SSH, HTTP, HTTPS)
Установка Fail2Ban для защиты от перебора паролей
Настройка правил Fail2Ban для SSH и веб-сервера
Знакомство с Docker: установка движка и CLI
Установка Docker Compose для управления мульти-контейнерными приложениями
Основы изоляции: почему каждый проект должен быть в своем контейнере
Подготовка файловой структуры сервера для удобного хранения проектов
Развертывание Nginx как обратного прокси-сервера через Docker
Настройка конфигурации Nginx для статических сайтов
Установка PHP-FPM в отдельном контейнере
Связка Nginx и PHP-FPM через внутреннюю Docker-сеть
Оптимизация настроек PHP-FPM (pm.max_children, memory_limit) под нагрузку
Установка MariaDB/MySQL в изолированном контейнере
Безопасное хранение паролей от БД через переменные окружения (.env)
Подключение к базе данных из внешнего клиента (DBeaver/Navicat) через туннель
Установка Redis для кэширования запросов и сессий
Интеграция Redis с PHP-приложением для ускорения работы
Автоматическая выдача SSL-сертификатов через Certbot (Let's Encrypt)
Настройка автопродления SSL-сертификатов по крону
Принудительный редирект с HTTP на HTTPS в Nginx
Включение gzip и brotli сжатия для ускорения загрузки страниц
Настройка кэширования статики (browser caching) в заголовках Nginx
Защита от простых DDoS и ботов: модуль limit_req в Nginx
Настройка резервного копирования баз данных (mysqldump) по расписанию
Настройка резервного копирования файлов проектов (tar)
Отправка бэкапов на удаленное хранилище (S3-compatible storage или другой сервер)
Ротация и очистка старых логов, чтобы не забить диск
Мониторинг нагрузки: установка и настройка htop и iotop
Просмотр логов в реальном времени: tail, grep и journalctl
Установка простого мониторинга доступности (Uptime Kuma или скрипт в Telegram)
Изоляция арбитражных инструментов: запуск ботов в отдельных контейнерах
Установка SOCKS5/HTTP прокси (3proxy) внутри Docker для мультиаккаунтинга
Настройка аутентификации и ограничения доступа к прокси по IP
Проверка анонимности и работы прокси-сервера
Оптимизация ядра Linux (sysctl.conf) для высоких нагрузок и сетевых соединений
Настройка swap-файла: когда он нужен, а когда вредит
Чек-лист финальной проверки безопасности перед запуском проекта
План действий при взломе или падении сервера: восстановление из бэкапа
АПТЕЧКА ДЛЯ ЖИВОТНЫХ
Автомобили Германии — FORD, MERSEDES, VW, IVECO
Чат рулетка 2026: чаты, где каждый момент — шанс
Чат рулетка онлайн
Чат с Аней: психологический разговор
Чатрулетка: новый способ общения
Чай и кофе: сила вкуса
Детские игрушки из безопасных материалов
Эксплуатация шин: Рекомендации по использованию
Фототехника для пейзажей
Как Aptum хостинг помогает малым бизнесам в управлении CRM-системами
Как выбрать Vdsina вечный хостинг для своего проекта
Компоненты безопасности IP
Конкуренция на российском автомобильном рынке
Онлайн генератор паролей для Windows
Оптимизация обработки форм GEO проекта
Сервер для социальных сетей: Безопасность, Скорость, Изоляция
Смешные моменты
Сравнение Arsys хостинг сервисов для блогеров с WordPress на 2023 год
Весь экран под циферблат