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

Как установить phpBB Forum с Apache и бесплатным Lets Encrypt SSL на Ubuntu 22.04


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

  1. Предпосылки
  2. Установите Apache, MariaDB и PHP.
  3. Создание базы данных для phpBB
  4. Скачать phpBB
  5. Настройка Apache для phpBB
  6. Доступ к веб-интерфейсу phpBB
  7. Защитите phpBB с помощью Lets Encrypt SSL
  8. Заключение

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

Этот пост покажет вам, как установить phpBB с Apache и Lets Encrypt SSL в Ubuntu 22.04.

Предпосылки

  • Сервер под управлением Ubuntu 22.04.
  • Действительное доменное имя, указанное с IP-адресом вашего сервера.
  • На сервере настроен пароль root.

Установите Apache, MariaDB и PHP

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

apt install apache2 mariadb-server php libapache2-mod-php php-gd php-curl openssl php-imagick php-intl php-json php-ldap php-common php-mbstring php-mysql php-imap php-sqlite3 php-net-ftp php-zip unzip php-pgsql php-ssh2 php-xml wget unzip -y

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

systemctl start apache2
systemctl enable apache2

Создать базу данных для phpBB

phpBB использует MariaDB для хранения своих данных. Итак, вам нужно будет создать базу данных и пользователя для phpBB. Сначала войдите в оболочку MariaDB с помощью следующей команды:

mysql

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

MariaDB [(none)]> CREATE DATABASE phpdb;
MariaDB [(none)]> GRANT ALL ON phpdb.* to 'phpuser'@'localhost' IDENTIFIED BY 'password';

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

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

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

Скачать phpBB

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

wget https://download.phpbb.com/pub/release/3.3/3.3.7/phpBB-3.3.7.zip

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

unzip phpBB-3.3.7.zip

Затем переместите извлеченный каталог в корневой веб-каталог Apache:

mv phpBB3 /var/www/html/phpbb

Затем измените владельца и права доступа к каталогу phpbb:

chown -R www-data:www-data /var/www/html/phpbb
chmod -R 775 /var/www/html/phpbb

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

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

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

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

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

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

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

ErrorLog ${APACHE_LOG_DIR}/phpbb_error.log
CustomLog ${APACHE_LOG_DIR}/phpbb_access.log combined


</VirtualHost>

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

a2ensite phpbb
a2enmod rewrite

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

systemctl restart apache2

Вы также можете проверить статус службы Apache с помощью следующей команды:

systemctl status apache2

Вы получите следующий вывод:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-05-28 10:50:04 UTC; 2s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 22212 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 22217 (apache2)
      Tasks: 6 (limit: 2292)
     Memory: 15.8M
        CPU: 98ms
     CGroup: /system.slice/apache2.service
             ??22217 /usr/sbin/apache2 -k start
             ??22218 /usr/sbin/apache2 -k start
             ??22219 /usr/sbin/apache2 -k start
             ??22220 /usr/sbin/apache2 -k start
             ??22221 /usr/sbin/apache2 -k start
             ??22222 /usr/sbin/apache2 -k start

May 28 10:50:04 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...

Доступ к веб-интерфейсу phpBB

Теперь откройте веб-браузер и войдите в веб-интерфейс phpBB, используя URL-адрес http://phpbb.example.com. Вы должны увидеть следующую страницу:

Перейдите на вкладку «УСТАНОВКА» и нажмите кнопку «Установить», чтобы начать установку. Вы должны увидеть следующую страницу:

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

Укажите хост базы данных, порт, имя базы данных, имя пользователя, пароль и нажмите кнопку «Отправить». Вы должны увидеть следующую страницу:

Укажите свой протокол, доменное имя веб-сайта, порт, путь и нажмите кнопку «Отправить». Вы должны увидеть следующую страницу:

Укажите свои данные SMTP и нажмите кнопку «Отправить». Вы должны увидеть следующую страницу:

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

Нажмите кнопку «Отправить меня в ACP». Вы должны увидеть панель управления phpBB на следующей странице:

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

Всегда полезно защитить свой сайт с помощью Lets Encrypt SSL. Вам нужно будет установить клиент Certbot для установки и управления SSL. Вы можете установить его с помощью следующей команды:

apt-get install python3-certbot-apache -y

После установки Certbot выполните следующую команду, чтобы защитить свой сайт с помощью Lets Encrypt SSL:

certbot --apache -d phpbb.example.com

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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
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
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for phpbb.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/phpbb-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/phpbb-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/phpbb-le-ssl.conf

Затем выберите, следует ли перенаправлять HTTP-трафик на HTTPS, как показано ниже:

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 и нажмите Enter, чтобы установить Lets Encrypt SSL для вашего сайта:

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

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

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

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/phpbb.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/phpbb.example.com/privkey.pem
   Your cert will expire on 2022-08-12. 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"
 - 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

Теперь вы можете безопасно получить доступ к своему веб-сайту, используя URL-адрес https://phpbb.example.com.

Заключение

Поздравляем! вы успешно установили phpBB с Apache и Lets Encrypt SSL в Ubuntu 22.04. Теперь вы можете изучить панель управления phpBB и приступить к созданию своей первой доски.