Настройка коммерческой панели ISPmanager на VPS
ISPmanager — это популярная платная панель управления хостингом, предназначенная для упрощения администрирования серверов на базе Linux. Она предоставляет пользователям интуитивно понятный интерфейс, который позволяет легко управлять виртуальными и выделенными серверами, а также веб-приложениями. Благодаря широкому набору функций, таких как управление доменами, базами данных и почтовыми ящиками, ISPmanager подходит как для опытных системных администраторов, так и для новичков. Альтернативные варианты для ISP вы можете найти в статье Обзор ТОП 10 Панелей Управления Хостингом VPS.
ISPmanager 6 системные требования и установка
Оцените функционал ISPmanager заказав VPS у хостинг провайдера PQ c бесплатной лицензией на первый месяц использования.
Панель управления хостингом ISPmanager устанавливается на выделенный сервер или виртуальную машину на базе гипервизорной виртуализации KVM или контейнерной виртуализации, например OpenVZ.
Поддерживаемые операционные системы (ОС) с архитектурой x64:
- AlmaLinux 8, 9;
- Debian 10, 11;
- Ubuntu 20.04 (рекомендуется), 22.04;
- VzLinux 8;
- Rocky Linux 8.
Полная установка описана в официальном руководстве ISP.
wget https://download.ispmanager.com/install.sh -O install.sh sh install.sh
После окончания установки панель управления ISPmanager Lite доступна по адресу:
https://<IP-адрес сервера>:1500/ispmgr
Конфигурационные и лог файлы в ISPmanager
- Конфигурационные файлы MySQL расположены в директории /etc/mysql/mysql.conf.d/ для Ubuntu 22, что можно увидеть в файле /etc/mysql/my.cnf
Лог-файлы панели управления находятся в директории /usr/local/mgr5/var/:
- /usr/local/mgr5/var/ispmgr.log — основной лог ISPmanager;
- core.log — лог COREmanager;
- pkg.log — лог установки, удаления и обновления пакетов панели управления;
- /usr/local/mgr5/var/ihttpd.log — лог встроенного веб-сервера ihttpd;
- backup2*.log — логи модуля резервного копирования;
- usermove.log — лог импорта пользователя.
Приоритетный сайт или домен по умолчанию ISPmanager
По умолчанию приоритетный веб домен (домен по умолчанию) в ISPmanager не настроен.
Веб-серверы могут обслуживать несколько веб-доменов на одном IP-адресе. В Apache используется механизм виртуальных хостов (VirtualHost), в nginx - несколько секций server в конфигурационном файле, имеющих разные имена, но привязанных к одним и тем же IP-адресам. В ситуации, когда на IP-адрес веб-сервера приходит запрос с указанием имени веб-домена, не обслуживаемого веб-сервером, Apache и nginx определяют веб-домен, используемый по умолчанию, и обрабатывают запрос в соответствии с настройками этого веб-домена.
При включении флага Приоритетный веб-домен будет обслуживать запросы на IP-адресах, привязанных к этому веб-домену, в которых имя хоста и IP-адрес сервера не совпадают ни с одним веб-доменом из описанных в конфигурационном файле. Если ранее был задан другой приоритетный веб-домен и хотя бы один IP-адрес из используемых старым и новым приоритетным веб-доменом совпадает, флаг Приоритетный для этого (ранее заданного приоритетным) веб-домена будет снят.
ISPmanager: как бэкапить Mysql?
ISPmanager хранятся бэкапы и хостов и баз данных Движок БД MySQL в локальной директории /backups_ispmanager. Подробное видео о создании резервных копий, в том числе и Mysql:
Я по старинке, также для ISPmanager настраиваю утилиту Автоматического резервирование БД MySql при помощи AutoMySQLBackup для бэкапа MySQL - мне так удобнее.
Интеграция Let’s Encrypt ISPmanager
- Где получить SSL сертификат бесплатно? Использование центра сертификации Let’s Encrypt - бесплатный центр сертификации SSL
Обновление SSL сертификата.
Каждый день в 1:30 утра система проверяет, какие сертификаты должны быть обновлены. Процедура обновления начинается за 7 (или менее дней) до истечения срока действия сертификата.
Вы также можете запустить процесс обновления вручную с помощью функции letsencrypt.check.update. Вызовите функцию через утилиту mgrctl со следующими параметрами:
/usr/local/mgr5/sbin/mgrctl -m ispmgr letsencrypt.check.update force_update=yes cert_name=%cert name% user_name=%user name%
При обновлении сертификата с DNS-проверкой будут генерироваться новые TXT-записи. Если используется внешний DNS-сервер, записи не будут добавлены автоматически, а сертификат не будет обновлен.
Файл SSL журнала /usr/local/mgr5/var/ispmgr.log
По умолчанию уровень ведения журнала недостаточен для получения всей информации, которая может понадобиться администратору для решения проблем. Выполните следующие шаги:
Зайдите в Настройки → Настройка логирования
- Нажмите Ctrl и выберите 3 строки: ssl, rpc, core_modules.
- Нажмите на максимум.
Проблема FTP доступ: 425 Unable to build data connection: Operation not permitted
Столкнулся с проблемой в ISPmanager - для пользователей ftp не выводит список файлов. Ошибка:
Команда: MLSD Ответ: 150 Opening BINARY mode data connection for MLSD Ответ: 425 Unable to build data connection: Operation not permitted
Проблема была в ProFTPd. Похоже, что недавнее изменение в правилах обработки TLS ProFTPd по умолчанию требует повторного использования сеансов SSL, чего не делает FireFTP.
Исправление просто, добавьте следующее в proftpd.conf и перезапустите ProFTPd:
TLSOptions NoSessionReuseRequired
ISPmanager защита от DDOS
В ISPmanager можно настроить защиту сайта от DDOS-атак. Она нужна для блокировки IP-адресов, с которых поступает большое количество запросов. Включение защиты доступно, только если установлен веб-сервер Nginx.
Для работы защиты используется модуль ngx_http_limit_req_module, который позволяет ограничить скорость обработки запросов по заданному ключу или запросов, поступающих с одного IP-адреса.
Смысл этой заметки: дорогой защищателец от атак, если не понимаешь не включай эту приблуду!!!
ISPmanager настройка правил брандмауэра
При настройки в панели ISPmanager 6 фаервола (iptables) я думал, что будет удобно использовать веб-интерфейс и не нужно как в случае с Fastpanel использовать командную строку. Но как всегда меня смогли удивить:( Используйте консоль для настройки фаервола.
Конфигурационные файлы с правилами iptables вы можете увидеть изучив файл /usr/local/mgr5/etc/scripts/restore_iptables_ipset.sh, который содержит в моем случае информацию:
#!/bin/sh ipset -R -! < /etc/ispipset.conf iptables-restore < /etc/ispiptable.conf ip6tables-restore < /etc/ispip6table.conf
Адрес источника все ip задаются в формате:
- IPv4: 0.0.0.0/0
- IPv6: ::/0
Из коробки в панели уже настроены правила для icmp и настроен fail2ban для ssh. Но установить правило по умолчанию запретить все из веб-интерфейса нельзя! Но зная последовательность правил (смотрите скриншот), которые создали программисты ISP, мы все же можем закрыть нужные нам порты для доступа из вне.
Алгоритм закрытия SSH протокола (порт 22). Нам нужно чтобы SSH порт был доступен только с определенных IP.
- Создаем первое правило вида "Частично разрешить" (смотрите скриншот) в котором указываем IP или сеть с которой разрешен доступ. Будет создано 3 правила, одно из которых заблокирует SSH порт для всего остального мира.
- Правила разрешение для остальных IP и/или сети создавайте стандартное, просто "Разрешить".
Второй вариант настройки брендмауэра ISP менеджера
- Через веб-интерфейс разрешаем все что нам нужно: порты, IP и/или сети
- На этом шаге логинемся по SSH и устанавливаем правило по умолчанию для входящих пакетов - блокировать все
sudo iptables -P INPUT DROP sudo ip6tables -P INPUT DROP
Также рекомендую добавить правила для работы ping (icmp):
# Это правило позволит вашему серверу принимать все ICMP-пакеты, что включает в себя как эхо-запросы (ping), так и другие типы ICMP-сообщений. iptables -A INPUT -p icmp -j ACCEPT # Это правило позволит вашему серверу принимать все ICMPv6-пакеты, что включает в себя такие сообщения, как эхо-запросы (ping) и другие типы ICMPv6-сообщений. ip6tables -A INPUT -p icmpv6 -j ACCEPT
На этом этапе, если вы перезагрузите сервер, то настройки сделанные через консоль не сохранятся. Для сохранения настроек iptables и после перезагрузки вашего сервера, выполните команды:
# для IPv4 iptables-save -f /etc/ispiptable.conf # для IPv6 ip6tables-save -f /etc/ispip6table.conf
Вот теперь, безопасную настройку фаервола можно считать законченной. Напомню лишний раз, прежде чем использовать iptables-save очень внимательно протестируйте свои правила, убедитесь что у вас есть доступ к VNC вашего сервера для сброса настроек фаервола!
📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Китайский VPN Shadowsocks простая установка и настройка
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах