Руководство по установке RISH на сервер

RISH – это панель управления сервером, которая не имеет веб-интерфейса, чрезвычайно экономична в плане потребления ресурсов и идеально подходит как для развертывания боевых серверов, так и для отладки сайтов локально.
Для работы RISH требуется подключение к серверу через SSH терминал.
Несмотря на отсутствие веб-интерфейса, взаимодействие с панелью осуществляется с использованием привычного интерфейса с меню.
Для развертывания и поддержки работы требуются минимальные знания по работе сервера и сайтов. Обычно хватает подготовки большинства вебмастеров, уже имеющих опыт создания сайтов.
Куда можно устанавливать RISH и куда нельзя
Прежде чем начинать установку RISH следует убедиться, что вы правильно выбрали куда собираетесь его ставить и понимаете как работает RISH.
Изначально RISH был создан в расчете на установку на виртуальные сервера (VPS или VDS). Так же он идеально расчитан на развертывание на локальных виртуальных машинах и очень хорошо подходит для разработчиков сайтов.
Несмотря на то, что RISH не тестировался лично мной на WSL 2 – есть клиенты, которые его успешно используют в таком режиме. С моей точки зрения это имеет несколько неудобств – WSL может менять адрес по своему усмотрению и не позволяет контролировать процесс выдачи адресов и способ подключения. Таким образом, в принципе, WSL 2 можно использовать, если вы понимаете, что делаете и хорошо разбираетесь в процессе. WSL 1 для установки не подходит совсем.
Для всех любителей поставить что угодно в docker – нет, RISH не установится в docker! И работать там не будет!
Тем, кто хочет установить RISH на физический сервер – я советую вначале поставить на него гипервизор (Proxmox, KVM, QEMU или какой-то другой) и затем уже устанавливать RISH в одну из созданных им виртуальных машин. Это позволит более гибко управлять процессом работы виртуальных машин. Например, появится возможность создавать архивы виртуальных машин и переносить их между серверами.
Отдельно стоит упомянуть небольшие mini pc китайского производства, которые стоят очень дешево, зачастую имеют безвентиляторное исполнение и неплохо подходят для локальной разработки. Иногда покупка такого мини сервера обходится дешевле, чем расширять память на своем компьютере. Несмотря на то, что на таких mini pc тоже можно развернуть гипервизор (например KVM), RISH туда можно установить и напрямую (хотя вариант гипервизора все равно предпочтительнее).
Еще один вариант установки, который я не рекомендую делать – это если у вас компьютер с Linux (например Fedora) и вы думаете, что он подойдет для установки RISH. Нет – не надо так делать! Ваш домашний компьютер это не сервер! Серверный IP должен отличаться от вашего домашнего компьютера! Даже если у вас установлен Linux – разверните на нем гипервизор (например KVM) и только туда ставьте RISH!
Краткая сводка, куда можно ставить RISH и куда нельзя | |
---|---|
VPS (VDS) | ![]() |
Локальная виртуальная машина (VMWare, QEMU, KVM и т.п.) | ![]() |
mini pc (для локальной установки) (рекомендуется все таки использовать KVM) | ![]() |
Физический сервер (рекомендуется использовать KVM и уже в виртуальную машину ставить RISH) | ![]() |
WSL 2 (возможны проблемы с выдачей и фиксацией IP адресов) | ![]() |
WSL 1 (это даже не запустится) | ![]() |
Docker (работать не будет) | ![]() |
Ваш личный компьютер на Linux (множество нюансов, которые приведут к проблемам использования) | ![]() |
Системные требования
Минимальные требования
- 512 Мб ОЗУ
- одно ядро CPU
- Минимум на диске порядка 5 Гб
- Операционная система Alma Linux (или Rocky Linux) 8 или 9 версии
При установке с 512 Мб ОЗУ будет задействован swap файл – без него установка не запустится. Полагаю, что можно установить и в 2 Гб на диске, но не тестировал. Размер установки может отличаться в зависимости от системы и архитектуры. 10 Гб гарантированно достаточный объем.
Я надеюсь вы понимаете, что минимальные требования и нормальное функционирование сервера – это разные вещи. Несмотря на то, что RISH можно установить на сервер c 512 Мб ОЗУ, в такой конфигурации он будет работать не в оптимальном режиме.
Минимальные требования для оптимальной работы
- 2 Гб ОЗУ
- 2 ядра CPU
- Минимум на диске порядка 15 Гб
- Операционная система Alma Linux (или Rocky Linux) 8 или 9 версии
Что еще проверить перед установкой?
Подключитесь к серверу или виртуальной машине через терминал
Перед установкой RISH подключитесь к серверу через терминал со своего компьютера. Не надо запускать установку непосредственно на сервере, даже если вы сидите за ним с подключенной клавиатурой и монитором.
Вам потом понадобится копировать ключи и другие значения на свой компьютер для дальнейшего подключения без пароля и это вы не сможете сделать, сидя за физическим сервером. Так же некоторые компьютеры просто не поддерживают вывод в консоли на русском языке и вы банально не сможете даже начать установку.
Если вы устанавливаете RISH на виртуальную машину – тоже не стоит делать установку RISH в ее окне. У вас будут такие же проблемы. Выясните IP адрес вашей виртуальной машины и подключайтесь к ней с помощью терминала. Выяснить IP адрес можно, например, в веб интерфейсе вашего роутера или непосредственно в окне виртуальной машины с помощью команды:
ip route get 1 | grep -Eo 'src [0-9\.]{1,20}'
Кстати, хочу обратить внимание всех, кто ставит AlmaLinux (или Rocky) на свои мини-ПК или виртуальные машины – при установке обязательно поставьте галочку для пользователя root – «Разрешить вход пользователям root с паролем SSH». Без этого вы не сможете авторизоваться через терминал с паролем.

Терминал легко ищется в магазине по ключевому слову "терминал"
(неожиданно, да?). Можно просто кликнуть по ссылке https://apps.microsoft.com/detail/9n0dx20hk701?hl=ru-ru&gl=RU
Ставить putty и работать с ним не стоит – крайне неудобная программа, смысл которой сейчас только в тех людях, которые упорно не хотят переходить на что-то новое. Но если сильно хочется – можете и его использовать.
Для MacOS советую iTerm2. На Linux хватает и штатного.
Впрочем, выбор терминала – это очень длинная история и лучше ее оставить для отдельной статьи. Ну или вы справитесь самостоятельно.
Кстати, на всякий случай поясню для тех, кто ставит на VPS и почему-то выбрал прямое подключение по VNC (в браузере). Не надо так делать! Скорее всего у вас там не будет кириллицы (и вы не сможете выполнить установку) и к тому же буфер обмена не будет работать (да, это для вас окажется неприятным сюрпризом).

Запуск установки только от root пользователя
Так же убедитесь, что у вас есть доступ к вашему VPS или серверу от root! Установка производится только от root пользователя.
Если у вас нет доступа от root – то перейти в режим root легко можно с помощью команды sudo:
sudo -s
После параметра -s не надо ничего добавлять! Просто набираете эту команду и нажимаете Enter. Далее у вас спросят пароль root и поменяется приветствие (обычно появляется #). С этого момента вы работаете в режиме пользователя root.
Запомните, что управление RISH также идет только от пользователя root!
Не давайте доменное имя сайта серверу!
При покупке сервера у вас всегда спрашивают доменное имя. Я использую такую методику – беру имя сервера в качестве поддомена (их можно давать по именам цветов, созведий и так далее) и присоединяю к изменнному домену хостера. Например, для FirstVDS получается примерно так geran.fvds.ru.
Такое имя не пересекается с реальными доменами и не создаст конфлиты имен. Если вы дадите серверу доменное имя вашего реального сайта, который располагается на этом сервере – готовьтесь к конфликтам и к тому что сайт не будет работать. Предупреждаю об этом заранее, чтобы не получилось сюрприза.
Не нажимайте Ctrl-C для копирования!
При работе в терминале не нажимайте Ctrl-C
– это приведет к остановке работы программы!
Все уже настолько привыкли копировать с помощью Ctrl-C
, Ctrl-V
, что нажимают не задумываясь. Однако при работе в терминале Ctrl-C
– это прерывание работы программы и, соответственно, прерывание установки RISH. RISH запоминает этап, на котором прервалась установка и может продолжить установку с места прерывания. Однако все равно запомните – в большинстве терминалов само выделение текста уже приводит к его копированию в буфер обмена!
Так же на Windows есть клавиши-заменители: Ctrl-Insert
– копирование выделенного текста и Shift-Insert
– вставка текста из буфера обмена.
Подключение посредством терминала к вашему серверу
ssh root@192.168.1.37
Здесь указываете ваш IP адрес сервера.
Затем вбиваете пароль (он не отображается и это достаточно муторный процесс, даже если вы его просто копируете).
Какие подводные камни могут быть?
Несмотря на то, что первое подключение обычно происходит без приключений, нюансы все равно могут быть.
Вы можете получить сообщение:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:Jw+5dHfqRHsTmnn2KXCXLQEaeqjoqPURNmCirPO9M+Q.
Please contact your system administrator
Что делать и почему появилось сообщение
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!?
Дело в том, что ваши подключения к серверу шифруются и для этого выпускаются ключи шифрования.
Компьютер предупреждает вас о том, что ключ шифрования изменился и что-то идет не так. Причин может быть несколько:
- Наиболее вероятная – если вы уже подключались к этому серверу и затем решили сменить на нем операционную систему или просто решили переустановить ее (например, потому что выбрали не ту версию), то при следующем подключении вы получите именно такое сообщение.
- Менее вероятная – у вас стоит антивирус Касперского (или любой другой) и настроена проверка соединений по 22 порту. Это, естественно, надо отключить в настройках антивируса, потому что в таком случае вас действительно слушают.
- Самая невероятная – кто-то действительно вклинился в ваше подключение. Обычно это из разряда фантастики.
Как решить WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!?
ssh-keygen -R 192.168.1.37
Начало установки RISH
После установки подключения с помощью терминала, вы можете начать непосредственно установку.
Установка RISH начинается очень просто – вам нужно скопировать указанную команду в свой терминал и запустить ее, нажав Enter:
curl -L get.rish.su | sh && /root/rish/ri.sh
curl -L getrish.sovmart.com | sh && /root/rish/ri.sh
dnf install curl
Как работает команда установки?
Грубо говоря, команда состоит из двух частей:
- Скачивание архива с сайта и разархивирование его в папку
/root/rish
- Запуск установки путем запуска файла
/root/rish/ri.sh
Если по каким-то причинам команда не сработает, но у вас есть архив RISH – вы можете самостоятельно его распаковать в папку /root/rish
и запустить командой установки:
chmod u+x /root/rish/ri.sh && /root/rish/ri.sh
Процесс установки RISH
Сам процесс установки RISH – это достаточно простая и линейная процедура, которая заставляет вас отвлекаться только несколько раз на выбор версии PHP и базы данных (если, конечно, вы не нажмете Ctrl-C
– используйте вместо него Ctrl-Insert
или достаточно выделить текст – он сам будет скопирован в буфер обмена)
Продолжить прерванный процесс установки очень просто с помощью команды:
/root/rish/ri.sh
В процессе установки создается логфайл, в котором отмечаются уже выполненные этапы установки logfile_rish_install.log
. Он же используется для проверки того, какие этапы уже были выполнены, а какие – нет.
Если очистить этот файл – установка начнется с нуля.
Как устроен экран установщика RISH
В первой части выводятся основные сообщения о событиях установки – они меняются редко и позволяют контролировать процесс установки. Можно рассматривать их как краткий конспект установки.
Во второй части появляются текущие сообщения от устанавливаемых компонентов а так же диалоговые меню.
Взаимодействовать с диалоговыми меню очень просто с помощью стрелок «вверх» и «вниз». Отказ – «Esc». Это все должно быть интуитивно понятно и обычно не требует объяснений.
Размер окна терминала для установщика RISH
Обновление системы
Отключение SELinux
Если вы ставите RISH на физический сервер, мини-ПК или на локальный виртуальный сервер, то вполне возможно, что по-умолчанию будет включена система безопасности SELinux.
Настройка системы с SELinux – это отдельный вид искусства, поэтому чаще всего ее просто отключают. Это не приводит к ухудшению безопасности системы, тем более, что на VPS она будет всегда отключена по умолчанию.
Поэтому RISH сразу предлагает ее отключить и делает настройки для этого. Вам остается только перезагрузить систему и начать установку заново (точнее – с того места, на котором остановились).
Заново запустить установку можно командой /root/rish/ri.sh
Создание swap файла
Если размер ОЗУ сервера менее 4 Гб и в системе отсутствует swap диск или файл – будет предложено его создание.
На некоторых VPS хостеры стали использовать виртуальные swap файлы, которые располагаются в ОЗУ сервера. Выглядит это примерно так:
NAME TYPE SIZE USED PRIO
/dev/zram0 partition 7.7G 352.3M 100
Это не дополнительный диск – он располагается в ОЗУ сервера, но позволяет сжимать его размер. Подключать ли дополнительный swap файл на диске в этом случае – это уже выбор пользователя. Все зависит от реального размера ОЗУ. По умолчанию RISH считает, что swap файл в таком случае уже подключен и подключение не предлагает. Возможно в будущих версиях это поведение будет изменено.
Выбор режима установки RISH
Разница между разными режимами заключается в том, что на локальном окружении не закрываются порты cockpit, предлагается для установки xdebug и появляется пункт меню для управления роутерами keenetic для создания локальных доменов.
Установку локального сервера надо выбирать только в защищенных сетях за файрволом, например, в домашней сети.
Дальше будет показана установка именно боевого (production) сервера, так как она выполняется чаще всего.
Установка PHP и выбор версий
RISH позволяет выбрать для каждого вашего сайта свою версию PHP из установленных на сервере. Для этого надо выбрать какие версии PHP вы поставите на сервер. Не стоит ставить абсолютно все сразу – это только приведет к лишнему расходу ресурсов. Помните, что для каждого пользователя создается свой пул PHP и он соответственно будет расходовать память сервера.
Выберите только те версии PHP, которые вам реально понадобятся. Не стоит устанавливать все из доступных. Если вам понадобится – вы сможете их установить позднее из меню RISH.
Еще одно замечание насчет версий PHP – если вам требуется PHP 5.6 – она будет доступна только на Alma Linux (или Rocky) 8 версии. На 9 их нет. Но я не советую использовать на боевом сервере (production) 8 версию AlmaLinux – только при локальной установке. Активная поддержка версии AlmaLinux 8 была прекращена 31 мая 2024 года, а поддержка безопасности осуществляется до 31 мая 2029 года.
После установки выбранной версии PHP будет предложено установить библиотеку imagick – зачастую для обработки изображений она может дать лучший результат, чем стандартная GD.
Выбор часового пояса
Выбор версии базы данных MariaDB
Во время установки базы данных могут возникнуть проблемы, если IP сервера попал в черный список – в этом случае доступ к серверам установки ему блокируется. Такое иногда встречается (особенно на timeweb) и RISH попытается автоматически разрешить конфликт за счет повторного обращения или ввода адресов альтернативных репозитариев.
Если ничего не поможет – советую сменить сервер на другой с IP адресом, отличающимся от текущего. Ну и просто не советую timeweb.
После установки базы данных автоматически выполняется команда mariadb-secure-installation, закрывая основные настройки безопасности в дефолтных настройках базы данных.
Установка certbot
Далее отвечаем - Y (соглашаемся с условиями использования сервиса), на следующий вопрос можно ответить - N (если не хотите, чтобы вам слали письма от организации EFF (Electronic Frontier Foundation – фонд электронных рубежей). Шлют не часто, но пропаганда типичного американского пошиба. Можно отказаться.
Далее вас спросят о том, для каких доменных имен выпустить сертификат. На данный момент у нас нет ни одного доменного имени и поэтому надо ответить - c (обращаю ваше внимание – это латинская буква c - не русская буква - с!).
Отключение почтового сервера
Отдельно опишу этот пункт, чтобы ни для кого не было сюрпризом. После установки certbot RISH останавливает почтовую службу postfix и отключает ее. Отсылка e-mail с сервера подразумевается только посредством подключения через SMTP.
Отправка через phpmail и непосредственно с того же сервера, где находится сайт, не приводит ни к чему хорошему. Поэтому во-избежание проблем, лучше либо использовать внешние сервисы (например, biz.mail.ru все еще бесплатен, так же бесплатна почта для домена от webmoney), либо настраивать почтовый сервер отдельно от основного.
В любом случае у вас на сайте отправка почты будет доступна только посредством SMTP.
Настройка пользователей и доступов
Все сайты на сервере хранятся в папках пользователей Linux. Путь к папке пользователя /var/www/siteuser/www
. Здесь siteuser – это имя пользователя. Разделение идет на уровне операционной системы. Поэтому для начала работы нужно придумать первое имя пользователя. По умолчанию будет предложено siteuser – можно его и оставить и просто нажать Enter. В дальнейшем сможете добавить новых пользователей с нужными именами. Ненужные можно будет удалить.
Имя пользователя набирается латинскими буквами без спецсимволов, тире и точек. При создании пользователя используйте только латинские буквы.
Так как RISH умеет устанавливать Joomla в автоматическом режиме – ему требуются данные для заполнения логина и пароля администратора сайта по умолчанию. В дальнейшем при создании нового сайта будут использованы эти данные. Они записываются в файл, доступный только указанному пользователю по адресу /home/siteuser/.pass.txt
. В дальнейшем вы сможете изменить записанные туда данные или просмотреть их, чтобы вспомнить пароль по умолчанию.
Либо введите свой e-mail, либо просто нажмите Enter – имя будет создано автоматически на основе имени пользователя.
Запрет авторизации по паролю
Это завершающий этап настройки сервера – осталось только запретить доступ по паролю и сформировать ключ доступа. Я постараюсь описать все возможные нюансы, чтобы этот процесс для вас прошел максимально безболезненно.
Ради безопасности сервера и уменьшения на него нагрузки настоятельно советую вам запретить авторизацию по паролю на сервере.
Вам будет предложено два варианта – либо вы формируете пару ключей самостоятельно (в этом случае можете выбрать «Нет»), либо пару ключей RISH сформирует за вас и запишет публичный ключ на сервер. В этом случае выбирайте - «Да».
В первый раз подключение с ключом может вызвать сложности, поэтому для новичков советую выбрать вариант «Да» и RISH самостоятельно сформирует ключ и запишет его на сервер. Вам останется только скопировать его себе.
Надо понимать, что то, что вы видите – это приватный ключ и он равнозначен паролю. Его надо сохранить к себе на компьютер и никому больше не показывать.
Скопируйте показанный приватный ключ в буфер обмена (чаще всего в терминале достаточно его просто выделить и он попадет в буфер обмена – таково поведение в стандартном Windows терминале и других тоже). В вашем терминале могут быть другие правила (только не нажимайте Ctrl-C – это приведет к остановке программы). Варианты копирования в разных терминалах могут быть – нажатие Enter, нажатие Ctrl-Insert или другие варианты – посмотрите по ситуации.
Создайте на своем компьютере папку с именем .ssh
в папке вашего пользователя (да, именно так, с точкой в самом начале).
В этой папке создайте файл с именем id_ed25519
без расширения!
Как выясняется здесь-то и кроется большинство ошибок – в Windows по умолчанию (впрочем как и в MacOS) отключен показ расширений файлов для зарегистрированных типов расширений. Пожалуйста не совершайте ошибок! Проверьте что показ расширений у вас ВКЛЮЧЕН!
Если это ваш первый и единственный сервер, то в папке .ssh
создайте файл с именем id_ed25519
без расширения и скопируйте туда ключ из буфера обмена. Обратите внимание, что последняя строка ключа обязана завершаться переводом строки. Это надо тщательно проверить.
Затем, если вы работаете с MacOS или Linux – права файлу надо выставить только для владельца.
ssh root@192.168.1.100
ssh -v root@192.168.1.100
ssh -vvv root@192.168.1.100
А вообще для упрощения работы с серверами и большего удобства энтузиастами проекта были созданы специальные программы, которые делают весь процесс удобнее и проще.
Называются они RishTools и созданы для Windows и MacOS.