Подготовка виртуальной машины в Яндекс.Облаке для работы с Битрикс

Как подготовить виртуальную машину из яндекс.облака для возможности быстро развернуть тестовую копию сайта на Битрикс или установить шаблон с 0?

Необходимо выполнить несколько шагов:

1. Заходим в яндекс.облако в раздел Compute Cloud, нажимаем "Создать ВМ"
Compute Cloud, нажимаем


2. При создании Виртуальной машины выбираем установку Centos 7 -
 выбираем установку Centos 7

Остальные параметры виртуальной машины устанавливаете на свое усмотрение, рекомендуем не менее 2 ГБ RAM для более стабильной работы CMS.

3. Важный момент - необходимо при создании указать публичный ключ, созданный на системе, через которую вы будете управлять виртуальной машиной.

указываем публичный SSH ключ

Подробная инструкция - https://cloud.yandex.ru/docs/compute/operations/vm-connect/ssh#creating-ssh-keys

4. После создания виртуальной машины у нее появится IP адрес, выложен вот здесь -

После создания виртуальной машины у нее появится IP адрес

Этот адрес необходимо использовать для подключения к консоли виртуальной машины. Для этого можно использовать утилиту ssh в Linux и macOS и программу PuTTY для Windows.
Пример команды для подключения
$ ssh <имя_пользователя>@<публичный_IP-адрес_виртуальной машины> 

5. После подключения необходимо установить следующие программы. Программы устанавливаются

 sudo yum install НАЗВАНИЕ


5.1 mc (для удобства перехода по папкам)
5.2 vim (для редактирования файлов)
5.3 wget (для скачивания файлов)
5.4 firewalld (для безопасности, в сборке centos от яндекса он не установлен. Также смотрите примечание внизу страницы)
 sudo yum install firewalld 
sudo systemctl enable firewalld 
sudo reboot 

6.После чего копируем с сайта битрикс актуальную ссылку для разворачивания виртуальной машины Битрикс (можно найти на этой странице http://www.1c-bitrix.ru/download/vmbitrix.php), сейчас актуальная команда для разворачивания выглядит так
sudo wget http://repos.1c-bitrix.ru/yum/bitrix-env.sh && sudo chmod +x bitrix-env.sh && sudo ./bitrix-env.sh


Это занимает время до 15-25 минут.

7. Вводим в браузере публичный IP машины, созданной в яндекс.облаке, и видим штатный установщик Битрикс. Делаем выбор, устаналивать ли битрикс с 0 или же восстанавливать резервную копию.

8. Возвращаемся в консоль и делаем еще ряд важных действий:

8.1. Делаем папку с файлами сайта ВМ Битрикс доступными для редактирования по ФТП - необходимо ввести команду
 sudo chmod 755 -R /home/bitrix/www/  
8.2.Устанавливаем возможность доступа по ФТП следующей последовательностью команд
sudo yum -y install epel-release
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
sudo yum -y update
sudo yum install -y proftpd openssl proftpd-utils
sudo service proftpd start
sudo chkconfig proftpd on

8.3 Создаем пользователя, который будет иметь доступ к файлам по ФТП
 
sudo adduser ftpuser -g600 -o -u600 -d /home/bitrix/www/
sudo passwd ftpuser

где ftpuser - это имя пользователя

8.4 Открываем доступ в сеть по ФТП - Редактируем файл /etc/sysconfig/iptables через любой редактор, например, ранее установленный Вим
sudo vim /etc/sysconfig/iptables

где вставляем следующие строки
-A INPUT -p tcp -m tcp --sport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 20 -j ACCEPT
-A INPUT -p tcp -m multiport --dports 20,21,50000:50400 -j ACCEPT


Если вам необходима возможность подключаться к серверу в пассивном режиме, то откройте командой файл:
vim /etc/sysconfig/iptables-config
И добавьте ip_conntrack_ftp в IPTABLES_MODULES=""
IPTABLES_MODULES="ip_conntrack_ftp"
9. Готово! Теперь у вас есть рабочий сайт на Битрикс на ВМ Яндекс.облака, к которому есть доступ по ФТП.
В качестве параметров подключения по ФТП необходимо указывать хост = публичный IP созданной ВМ машины Битрикс, логин и пароль - логин и пароль пользователя, созданного нами на шаге 8.3

P.S. Важный момент! На момент написания статьи, при установке Битрикс по скрипту (версия ВМ 7.4.1) происходило автоматическое удаление ранее установленного firewalld. Система остается работать только через iptables. Но - если не был установлен firewalld до этого - система всегда будет перезаписывать ваши правила в iptables! В итоге не сможет стабильно работать не только FTP , но и встроенные системы мониторинга Битрикс!
Поэтому очень важно обязательно установить firewalld перед установкой виртуальной машины битрикс!

support@capyba.ru