Поиск по сайту:

Как установить Automad CMS с Apache и Lets encrypt на Debian 10


На этой странице

  1. Требования
  2. Начало работы
  3. Установите Apache и PHP
  4. Установить Automad
  5. Настройка Apache для Automad
  6. Доступ к Automad
  7. Защитите Automad с помощью Lets Encrypt

Automad — это бесплатная плоская система управления контентом с открытым исходным кодом, написанная на языке PHP. Он быстрый, отзывчивый и предлагает функции, которые могут быть недоступны для других CMS на основе PHP. Automad использует текстовый файл для хранения своего содержимого вместо базы данных. Automad предоставляет веб-интерфейс для управления сайтом, системными настройками, загрузки изображений и написания сообщений в блогах. Он поставляется со встроенным редактором Markdown и средством обновления одним щелчком мыши, чтобы поддерживать Automad в актуальном состоянии.

В этом руководстве мы покажем вам, как установить Automad CMS на Debian 10 с помощью веб-сервера Apache.

Требования

  • Сервер под управлением Debian 10.
  • Для вашего сервера установлен корневой пароль.

Начиная

Перед запуском вам нужно будет обновить вашу систему до последней версии. Вы можете сделать это, выполнив следующую команду:

apt-get update -y
apt-get upgrade -y

После обновления сервера перезапустите его, чтобы изменения вступили в силу.

Установите Апач и PHP

Automad основан на PHP и работает на веб-сервере. Поэтому вам нужно будет установить Apache, PHP и другие необходимые модули на ваш сервер. Вы можете установить их все, выполнив следующую команду:

apt-get install apache2 php libapache2-mod-php php-zip php-curl php-mbstring php-gd php-xml php-xmlrpc php-soap unzip -y

После установки всех пакетов запустите веб-сервер Apache и включите его при перезагрузке системы с помощью следующей команды:

systemctl start apache2
systemctl enable apache2

Как только вы это сделаете, вы можете перейти к следующему шагу.

Установить Automad

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

wget https://bitbucket.org/marcantondahmen/automad/get/default.zip

После завершения загрузки извлеките загруженный файл с помощью следующей команды:

unzip default.zip

Затем переместите извлеченный каталог в корневой каталог Apache с помощью следующей команды:

mv marcantondahmen-automad-c241e88edc3c /var/www/html/automad

Затем измените владельца каталога automad на www-data и дайте соответствующее разрешение с помощью следующей команды:

chown -R www-data:www-data /var/www/html/automad
chmod -R 755 /var/www/html/automad

Как только вы это сделаете, вы можете перейти к следующему шагу.

Настроить Apache для Automad

Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для сервера Automad. Вы можете создать его с помощью следующей команды:

nano /etc/apache2/sites-available/automad.conf

Добавьте следующее содержимое:

<VirtualHost *:80>
     ServerAdmin 
     DocumentRoot /var/www/html/automad
     ServerName example.com

     <Directory /var/www/html/automad>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/automadcms_error.log
     CustomLog ${APACHE_LOG_DIR}/automadcms_access.log combined

</VirtualHost>

Сохраните и закройте файл, когда закончите. Затем проверьте Apache на наличие синтаксических ошибок с помощью следующей команды:

apachectl configtest

Если все в порядке, вы должны получить следующий вывод:

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Syntax OK

Затем включите виртуальный хост Apache и перепишите модуль с помощью следующей команды:

a2ensite automad
a2enmod rewrite

Наконец, перезапустите веб-сервер Apache, чтобы применить изменения конфигурации:

systemctl restart apache2

Как только вы закончите, вы можете перейти к следующему шагу.

Доступ к Automad

Теперь Automad установлен и настроен, пришло время получить доступ к веб-интерфейсу Automad.

Откройте веб-браузер и введите URL-адрес http://example.com. Вы будете перенаправлены на сайт Automad на следующем экране:

Чтобы создать учетную запись Automad, откройте веб-браузер и перейдите по URL-адресу http://example.com/dashboard. Вы будете перенаправлены на следующую страницу:

Теперь укажите желаемое имя пользователя и пароль, затем нажмите кнопку «Загрузить файл учетных записей», чтобы загрузить регистрационную форму пользователя и скопировать ее в каталог конфигурации:

mv config.php /var/www/html/automad/config/

Затем дайте надлежащее разрешение файлу config.php с помощью следующей команды:

chown -R www-data:www-data /var/www/html/automad/config/config.php

Теперь откройте веб-браузер и введите URL-адрес http://example.com/dashboard. Вы должны увидеть страницу входа в Automad:

Теперь введите свое имя пользователя и пароль и нажмите кнопку «Войти». Вы должны увидеть панель инструментов Automad CMS по умолчанию на следующей странице:

Защитите Automad с помощью Lets Encrypt

Во-первых, вам нужно будет установить инструмент Certbot, чтобы загрузить и установить бесплатный SSL Lets Encrypt для вашего веб-сайта.

Сначала добавьте репозиторий Certbot с помощью следующей команды:

apt-get install software-properties-common
add-apt-repository ppa:certbot/certbot

Затем обновите репозиторий и установите Certbot с помощью следующей команды:

apt-get update -y
apt-get install certbot python-certbot-apache -y

После установки вам нужно будет создать каталог .well-known внутри каталога letsencrypt. Вы можете создать его с помощью следующей команды:

mkdir -p /var/lib/letsencrypt/.well-known

Далее вам нужно будет предоставить соответствующие разрешения для каталога letsencrypt. Вы можете сделать это с помощью следующей команды:

chgrp www-data /var/lib/letsencrypt
chmod g+s /var/lib/letsencrypt

Затем создайте файл well-known.conf с помощью следующей команды:

nano /etc/apache2/conf-available/well-known.conf

Добавьте следующие строки:

Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"
<Directory "/var/lib/letsencrypt/">
    AllowOverride None
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>

Сохраните и закройте файл. Затем включите необходимые модули с помощью следующей команды:

a2enmod ssl
a2enmod http2
a2enmod headers
a2enconf well-known

Затем перезапустите службу Apache, чтобы применить все изменения конфигурации:

systemctl restart apache2

Теперь установите бесплатный SSL Lets Encrypt для своего домена example.com, выполнив следующую команду:

certbot --apache -d example.com

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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/example.com-le-ssl.conf
Deploying Certificate to VirtualHost /etc/apache2/sites-available/example.com-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/example.com-le-ssl.conf

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Затем выберите вариант 2, чтобы загрузить и установить бесплатный SSL-сертификат для своего домена. После успешного завершения установки. Вы должны получить следующий результат:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/example.com.conf to ssl vhost in /etc/apache2/sites-available/
example.com-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/example.com/privkey.pem
   Your cert will expire on 2019-10-22. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:
   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Ваша Automad CMS теперь защищена бесплатным SSL от Lets Encrypt. Вы можете получить к нему доступ, посетив URL-адрес https://example.com.