Как установить Tiki Wiki с Apache и разрешить шифрование SSL в Debian 10
На этой странице
- Требования
- Начало работы
- Установить сервер LAMP
- Создание базы данных для TikiWiki
- Скачать ТикиВики
- Настройка Apache для TikiWiki
- Доступ к веб-интерфейсу TikiWiki
- Защитите TikiWiki с помощью Let’s Encrypt
TikiWiki — это бесплатная система управления контентом с открытым исходным кодом, написанная на языке PHP. Он очень мощный, полнофункциональный и может использоваться для создания веб-сайтов, вики, веб-приложений, баз знаний, порталов, галерей изображений и многого другого. TikiWiki состоит из четырех основных компонентов: инструментов для создания и управления контентом, средств связи, инструментов настройки и администрирования, а также инструментов организации контента и средств навигации. Это позволит вам создавать и управлять контентом, а также настраивать сайты. TikiWiki поставляется с богатым набором функций, включая форумы, блог, карты, рабочее пространство, слайд-шоу, корзину, отслеживание ошибок и проблем, многоязычность, галерею файлов и изображений, события и многое другое.
В этом руководстве мы узнаем, как установить TikiWiki CMS на Debian 10.
Требования
- Сервер под управлением Debian 10.
- Для вашего сервера установлен корневой пароль.
Начиная
Перед запуском вам нужно будет обновить вашу систему до последней версии. Вы можете сделать это, выполнив следующую команду:
apt-get update -y
apt-get upgrade -y
После обновления сервера перезапустите его, чтобы изменения вступили в силу.
Установить LAMP-сервер
TikiWiki работает на веб-сервере Apache/Nginx, написанном на языке PHP, и использует MariaDB/MySQL для хранения своих данных. Поэтому вам нужно будет установить Apache, MariaDB, PHP и другие необходимые расширения на ваш сервер. Сначала установите сервер Apache и MariaDB с помощью следующей команды:
apt-get install apache2 mariadb-server unzip -y
По умолчанию Debian 10 поставляется с PHP версии 7.3. Но TikiWiki не поддерживает PHP 7.3. Итак, вам нужно будет установить PHP 7.2 и другие необходимые расширения.
Чтобы добавить репозиторий SURY, сначала загрузите ключ GPG с помощью следующей команды:
wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg
Затем добавьте репозиторий SURY в APT с помощью следующей команды:
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
Затем обновите репозиторий и установите PHP7.2 вместе со всеми необходимыми расширениями с помощью следующих команд:
apt-get update -y
apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-sqlite3 php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-gd php7.2-xml php7.2-cli php7.2-zip -y
После установки PHP7.2 откройте файл php.ini и настройте некоторые параметры:
nano /etc/php/7.2/apache2/php.ini
Добавьте следующие строки:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = Asia/Kolkata
Сохраните и закройте файл, когда закончите. Затем перейдите к следующему шагу.
Создать базу данных для TikiWiki
По умолчанию MariaDB не защищена. Итак, вам нужно будет сначала обезопасить его. Вы можете защитить его с помощью следующего скрипта:
mysql_secure_installation
Вы должны ответить на все вопросы, как показано ниже:
Enter current password for root (enter for none): Set root password? [Y/n]: N Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Как только MariaDB будет защищена, войдите в оболочку MariaDB:
mysql -u root -p
При появлении запроса укажите свой пароль root, затем создайте базу данных и пользователя для TikiWiki с помощью следующей команды:
MariaDB [(none)]> CREATE DATABASE tikidb;
MariaDB [(none)]> CREATE USER 'tiki'@'localhost' IDENTIFIED BY 'password';
Затем предоставьте все привилегии базе данных TikiWiki с помощью следующей команды:
MariaDB [(none)]> GRANT ALL ON tikidb.* TO 'tiki'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Затем сбросьте привилегии и выйдите из оболочки MariaDB с помощью следующей команды:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Как только вы это сделаете, вы можете перейти к следующему шагу.
Скачать ТикиВики
Во-первых, вам необходимо загрузить последнюю версию TikiWiki с веб-сайта Sourceforge. Вы можете скачать его с помощью следующей команды:
cd /var/www/html/
wget https://sourceforge.net/projects/tikiwiki/files/latest/download -O tikiwiki.zip
После завершения загрузки разархивируйте загруженный файл с помощью следующей команды:
unzip tikiwiki.zip
Затем переименуйте извлеченный каталог в тикивики с помощью следующей команды:
mv tiki-20.0 tikiwiki
Затем предоставьте соответствующие разрешения каталогу тикивики с помощью следующей команды:
chown -R www-data:www-data /var/www/html/tikiwiki/
chmod -R 755 /var/www/html/tikiwiki/
Как только вы закончите, вы можете перейти к следующему шагу.
Настройте Apache для TikiWiki
Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для TikiWiki. Вы можете создать его с помощью следующей команды:
nano /etc/apache2/sites-available/tikiwiki.conf
Добавьте следующее содержимое:
<VirtualHost *:80> ServerAdmin DocumentRoot /var/www/html/tikiwiki ServerName example.com <Directory /var/www/html/tikiwiki/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/tikiwiki_error.log CustomLog ${APACHE_LOG_DIR}/tikiwiki_access.log combined </VirtualHost>
Сохраните и закройте файл. Затем включите файл конфигурации виртуального хоста с помощью следующей команды:
a2ensite tikiwiki.conf
Наконец, включите модуль перезаписи Apache и перезапустите службу Apache, чтобы перезагрузить изменения конфигурации с помощью следующей команды:
a2enmod rewrite
systemctl restart apache2
Доступ к веб-интерфейсу TikiWiki
Теперь откройте веб-браузер и введите URL-адрес http://example.com. Вы будете перенаправлены на страницу приветствия TikiWiki:
Выберите свой язык и нажмите кнопку «Продолжить». Вы должны увидеть следующую страницу:
Примите лицензионное соглашение и нажмите кнопку «Продолжить». Вы должны увидеть следующую страницу:
Убедитесь, что ваша система соответствует минимальным требованиям, и нажмите кнопку «Продолжить». Вы должны увидеть следующую страницу:
Укажите имя вашей базы данных, имя пользователя базы данных и пароль. Затем нажмите кнопку «Продолжить». Вы должны увидеть следующую страницу:
Выберите ядро базы данных и нажмите кнопку «Установить», чтобы начать установку. После успешного завершения установки вы должны увидеть следующую страницу:
Теперь нажмите кнопку «Продолжить», вы должны увидеть следующую страницу:
Укажите всю необходимую информацию, такую как название Wiki, адрес электронной почты отправителя, безопасный вход в систему, адрес электронной почты администратора и нажмите кнопку «Продолжить». Вы должны увидеть следующую страницу:
Прочтите всю информацию и нажмите кнопку «Продолжить». Вы должны увидеть следующую страницу:
Теперь нажмите кнопку «Войти в Tiki and Lock Installer». Вы должны увидеть следующую страницу:
Теперь установите пароль администратора и нажмите кнопку «Применить». Вы должны увидеть следующую страницу:
Защитите TikiWiki с помощью Let’s Encrypt
В этом разделе мы объясним, как защитить ваш сайт TikiWiki с помощью бесплатного SSL от Let’s Encrypt.
Во-первых, вам нужно будет установить инструмент Certbot, чтобы загрузить и установить бесплатный SSL Let’s Encrypt для вашего веб-сайта. По умолчанию последняя версия Certbot недоступна в репозитории по умолчанию Debian 10. Итак, вам нужно будет добавить репозиторий Certbot в вашу систему.
Вы можете добавить репозиторий 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.conf для Let’s Encrypt, чтобы проверить ваш домен.
Во-первых, создайте каталог .well-known и предоставьте соответствующие разрешения:
mkdir -p /var/lib/letsencrypt/.well-known
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-сертификата для вашего домена 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
Вот и все. Теперь откройте веб-браузер и войдите в свою CMS TikiWiki, используя URL-адрес https://example.com. Вы должны, чтобы ваш сайт TikiWiki был должным образом защищен бесплатным SSL-сертификатом.