6373
правки
Rain (обсуждение | вклад) (Новая страница: «Ниже приводится список команд, необходимых для настройки веб-сервера и получения сертификатов для своего jabber-сервера на примере Debian 12. Первым делом ставим необходимые пакеты. Тут и далее команды выполняются от пользователя root. apt-get install apache2 certbot a2enmod h...») |
Rain (обсуждение | вклад) (+SSL) |
||
Строка 7: | Строка 7: | ||
Вторая команда включает поддержку установки header'ов для отдаваемого контента - это пригодится в дальнейшем для настройки [https://xmpp.org/extensions/xep-0156.html XEP-0156]. | Вторая команда включает поддержку установки header'ов для отдаваемого контента - это пригодится в дальнейшем для настройки [https://xmpp.org/extensions/xep-0156.html XEP-0156]. | ||
Создаем конфиг-файл для веб-сервера | Создаем конфиг-файл для веб-сервера. Здесь и далее вместо указанных IP-адресов используем адрес своего сервера, а вместо EXAMPLE.COM - свой домен. | ||
{{Hider hiding | {{Hider hiding | ||
Строка 80: | Строка 80: | ||
После успешного выполнения команд будет выдана информация о созданном сертификате, в том числе 2 файла - цепочка ключей и приватный ключ - сохраните эти пути для дальнейшего использования, они нам еще пригодятся. Всего получится 10 файлов. certbot обновляет сертификаты автоматически, если срок их истечения составляет менее 30 дней - т.е., обновление происходит раз в 2 месяца. | После успешного выполнения команд будет выдана информация о созданном сертификате, в том числе 2 файла - цепочка ключей и приватный ключ - сохраните эти пути для дальнейшего использования, они нам еще пригодятся. Всего получится 10 файлов. certbot обновляет сертификаты автоматически, если срок их истечения составляет менее 30 дней - т.е., обновление происходит раз в 2 месяца. | ||
В дальнейшем, для использования созданных на веб-сервере доменов - например, для размещения сайта, посвященного jabber-серверу, или размещения чат-логов конференций - можно включить в Apache2 поддержку SSL. Делается это следующим образом: | |||
a2enmod ssl | |||
Создаем конфиг-файл: | |||
{{Hider hiding | |||
|title=Конфиг-файл /etc/apache2/sites-available/ssl.jabber_service_domain_EXAMPLE.COM.conf | |||
|content=<pre> | |||
<VirtualHost 185.161.208.130:443 [2a07:c801:0:1e::]:443> | |||
ServerAdmin webmaster@EXAMPLE.COM | |||
DocumentRoot /var/www/html/EXAMPLE.COM/htdocs | |||
ServerName EXAMPLE.COM | |||
SSLEngine on | |||
SSLCertificateFile /etc/letsencrypt/live/EXAMPLE.COM/fullchain.pem | |||
SSLCertificateKeyFile /etc/letsencrypt/live/EXAMPLE.COM/privkey.pem | |||
<Location ~ "/\.well-known/host-meta(\.json)?"> | |||
Header set Access-Control-Allow-Origin "*" | |||
</Location> | |||
</VirtualHost> | |||
<VirtualHost 185.161.208.130:443 [2a07:c801:0:1e::]:443> | |||
ServerAdmin webmaster@upload.EXAMPLE.COM | |||
DocumentRoot /var/www/html/upload.EXAMPLE.COM/htdocs | |||
ServerName upload.EXAMPLE.COM | |||
SSLEngine on | |||
SSLCertificateFile /etc/letsencrypt/live/upload.EXAMPLE.COM/fullchain.pem | |||
SSLCertificateKeyFile /etc/letsencrypt/live/upload.EXAMPLE.COM/privkey.pem | |||
</VirtualHost> | |||
<VirtualHost 185.161.208.130:443 [2a07:c801:0:1e::]:443> | |||
ServerAdmin webmaster@pubsub.EXAMPLE.COM | |||
DocumentRoot /var/www/html/pubsub.EXAMPLE.COM/htdocs | |||
ServerName pubsub.EXAMPLE.COM | |||
SSLEngine on | |||
SSLCertificateFile /etc/letsencrypt/live/pubsub.EXAMPLE.COM/fullchain.pem | |||
SSLCertificateKeyFile /etc/letsencrypt/live/pubsub.EXAMPLE.COM/privkey.pem | |||
</VirtualHost> | |||
<VirtualHost 185.161.208.130:443 [2a07:c801:0:1e::]:443> | |||
ServerAdmin webmaster@conference.EXAMPLE.COM | |||
DocumentRoot /var/www/html/conference.EXAMPLE.COM/htdocs | |||
ServerName conference.EXAMPLE.COM | |||
SSLEngine on | |||
SSLCertificateFile /etc/letsencrypt/live/conference.EXAMPLE.COM/fullchain.pem | |||
SSLCertificateKeyFile /etc/letsencrypt/live/conference.EXAMPLE.COM/privkey.pem | |||
</VirtualHost> | |||
<VirtualHost 185.161.208.130:443 [2a07:c801:0:1e::]:443> | |||
ServerAdmin webmaster@proxy.EXAMPLE.COM | |||
DocumentRoot /var/www/html/proxy.EXAMPLE.COM/htdocs | |||
ServerName proxy.EXAMPLE.COM | |||
SSLEngine on | |||
SSLCertificateFile /etc/letsencrypt/live/proxy.EXAMPLE.COM/fullchain.pem | |||
SSLCertificateKeyFile /etc/letsencrypt/live/proxy.EXAMPLE.COM/privkey.pem | |||
</VirtualHost> | |||
</pre> | |||
}} | |||
И включаем его: | |||
a2ensite ssl.jabber_service_domain_mychat.name.conf | |||
systemctl restart apache2 | |||
[[Category:Свой сервер]] | [[Category:Свой сервер]] |