Apache windows настройка https

Все способы:

  • Вариант 1: Выбор окон для отображения
  • Вариант 2: Параметры персонализации
  • Вариант 3: Возвращение к классическому отображению окон
    • Решение возможных проблем
  • Вопросы и ответы: 0

Вариант 1: Выбор окон для отображения

Использование сочетания клавиш «Alt + Tab» — удобная функция для повышения эффективности работы с операционной системой Windows 10, причем в «десятке» реализовано несколько настроек, за счет которых пользователь сможет настроить отображение окон:

  1. Нажмите на кнопку «Пуск» и выберите запуск штатных «Параметров».
  2. Выберите раздел «Система».
  3. настройка alt tab в windows 10-02

  4. В следующем окне через панель слева переключитесь на вкладку «Многозадачность», затем в центральной части окна отыщите блок «Alt + Tab». Здесь из выпадающего меню можно выбрать, какие окна отображаются при использовании горячей клавиши. Всего доступно несколько вариантов, связанных с вкладками приложений, – показ трех, пяти и двадцати последних вкладок (касается только вкладок фирменного браузера Edge). Также можно выбрать, чтобы отображались только открытые окна.
  5. настройка alt tab в windows 10-03

Кроме того, если используется несколько рабочих столов, то показ окон и вкладок на них также настраивается – пролистайте список параметров до блока «Виртуальные рабочие столы». Здесь есть опция «При нажатии клавиш ALT + TAB отображаются окна, открытые на», предлагающая показывать окна только на столе, который используется, либо сразу на всех столах.

настройка alt tab в windows 10-04

Вариант 2: Параметры персонализации

К сожалению, настроить внешний вид отображения окон (например, размер или прозрачность) с помощью встроенных средств системы нет возможности, но для этого можно использовать сторонние утилиты, предназначенные для персонализации интерфейса операционки. Для этого подойдет простая, но функциональная утилита Winaero Tweaker, которая распространяется на бесплатной основе:

Скачать Winaero Tweaker с официального сайта

  1. Скачайте инсталляционный файл с официального сайта разработчика, перейдя по ссылке выше. Затем запустите EXE-файл и следуйте инструкциям пошагового мастера установки.
  2. настройка alt tab в windows 10-05

  3. Запустите утилиту и на левой панели разверните меню «Appearance», затем выберите пункт «Alt + Tab Appearance». В центральной части окна станут доступны некоторые настройки персонализации, которые касаются представления миниатюр окон. С помощью ползунка можно отрегулировать прозрачность фона – чем он правее, тем менее прозрачный фон. Также параметры можно выбрать или прописать вручную в блоке справа. Аналогичным образом настраивается уровень затемнения рабочего стола.
    настройка alt tab в windows 10-06

  4. Также доступно несколько дополнительных опций, например скрытие открытых окон.
  5. настройка alt tab в windows 10-07

  6. Если включить пункт «Enable classic Alt + Tab Dialog», тогда будет активировано классическое отображение окон, которое было в более ранних Windows. При использовании утилиты получится настроить некоторые параметры и классического представления «Alt + Tab» — количество строк и колонок окон. Есть выбор до 20 строк и 43 колонок.
    настройка alt tab в windows 10-08

    Ниже мы разобрали, как вернуть такой показ миниатюр окон, но с использованием встроенных средств, а точнее «Редактора реестра».

Помимо этого, с помощью Winaero Tweaker есть возможность настроить и другие параметры персонализации операционной системы, в том числе изменение контекстного меню Windows, внешнего вида панели задач, а также управление некоторыми функциями операционной системы.

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

Вариант 3: Возвращение к классическому отображению окон

В Windows 10 показ открытых окон и вкладок с помощью клавиш «Alt + Tab» несколько усовершенствован, но до сих пор есть возможность вернуть внешний вид миниатюр окон, который был свойственен более ранним выпускам операционной системы. Для этого потребуется внести правки в системный реестр.

  1. Запустите «Редактор реестра», одновременно нажав «Win + R», введя в текстовое поле regedit и нажав на кнопку «ОК» или клавишу «Enter».
  2. настройка alt tab в windows 10-09

  3. Разверните ветку HKEY_CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer. Этот путь также можно вставить в адресную строку «Редактора реестра» и нажать на клавишу «Enter».
  4. настройка alt tab в windows 10-10

  5. Выберите подраздел «Explorer» на панели слева, а в центральной части окна кликните правой кнопкой мыши по свободной области, затем в меню наведите курсор на пункт «Создать» и выберите «Параметр DWORD (32 бита)».
  6. настройка alt tab в windows 10-11

  7. Задайте следующее имя новому параметру – «AltTabSettings». Дважды кликните по нему левой кнопкой мыши, чтобы открыть окно с его «Свойствами». В строке «Значение» введите «1», затем нажмите на кнопку «ОК» для сохранения настроек.
  8. настройка alt tab в windows 10-12

Чтобы новые параметры вступили в силу, придется перезагрузить компьютер. После проделанных действий панель с открытыми окнами и вкладками примет классический вид. Чтобы вернуть стиль Windows 10, достаточно в созданном параметре либо выставить значение «0» (тем самым выключив его), либо попросту удалить ключ, нажав правой кнопкой мыши по названию, затем выбрав соответствующий пункт и подтвердив действие.

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

Решение возможных проблем

Случается, что при нажатии на клавиши «Alt + Tab» не происходит никаких действий. Это может быть связано как с клавиатурой (например, неработающие клавиши или сбой в работе ПО периферии), так и с системными ошибками или даже вирусными атаками. В такой ситуации даже после настройки сочетания ничего не изменится, поэтому придется отыскать причину возникновения неполадки и исправить ее самостоятельно. В этом вам может помочь наше отдельное руководство, где описаны наиболее распространенные сбои и возможные пути их решения.

Подробнее: Восстановление работы клавиш «Alt + Tab» в Windows 10

настройка alt tab в windows 10-13

Наша группа в TelegramПолезные советы и помощь

Протокол HTTPS позволяет передавать данные между сайтом и пользователем в зашифрованном виде, то есть посторонние лица не могут увидеть содержимое передаваемых данных и изменить их.

Веб-сервер Apache поддерживает работу HTTPS. Для настройки HTTPS на Apache нужен SSL сертификат. Точнее говоря, «SSL сертификат» включает в себя приватный ключ и публичный ключ (сертификат). Также вместе с SSL ключами дополнительно могут присылаться сертификаты центра сертификации, корневой сертификат.

Сертификаты SSL

SSL сертификаты можно разделить на два вида: валидные и самоподписанные.

Сертификат SSL можно сгенерировать у себя на компьютере. Причём можно сгенерировать для любого доменного имени. Но к таким сертификатам у веб-браузеров нет доверия. Поэтому если открыть сайт, защищённый таким сертификатом, то веб-браузер напишет ошибку, что сертификат получен из ненадёжного источника и либо запретит открывать этот сайт, либо предложит перейти на сайт на ваш страх и риск. Это так называемые «самоподписанные сертификаты». Чтобы браузер не выдавал ошибку о ненадёжного сертификате, его нужно добавить в список доверенных. Такие сертификаты подойдут для тестирования веб-сервера и обучению настройки веб-сервера для работы с SSL и HTTPS. Ещё такой сертификат можно использовать на сайте, к которому имеет доступ ограниченный круг лиц (несколько человек) — например, для сайтов в локальной сети. В этом случае они все могут добавить сертификат в доверенные.

Для реального сайта такой сертификат не подойдёт.

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

1) получить тестовый сертификат на 3 месяца (затем его можно продлить)

2) купить сертификат — в этом случае он действует от года и более

Валидный сертификат отличается от самоподписанного тем, что сторонний сервис удостоверяет подлинность этого сертификата. Собственно, оплачивается именно эта услуга удостоверения, а не выдача сертификата.

Данная статья посвящена вопросу, как настроить Apache в Windows для работы с протоколом HTTPS, будет показано, как подключить SSL сертификаты к Apache в Windows. Поэтому для целей тестирования и обучения нам хватит самоподписанного сертификата.

Как сгенерировать SSL сертификат в Windows

У меня веб-сервер установлен в папку C:\Server\bin\Apache24, поэтому если у вас он в другой директории, то подправьте команды под свои условия.

Откройте командную строку Windows (Win+x, далее выберите «Windows PowerShell (администратор)»). В командной строке введите команды:

cmd
cd C:\Server\bin\Apache24\bin\
set OPENSSL_CONF=C:\Server\bin\Apache24\conf\openssl.cnf
openssl.exe genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out localhost.key
openssl.exe req -new -key localhost.key -out localhost.csr

При вводе последней команды появятся запросы на английском языке. Ниже следует их перевод.

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----

Перевод:

Вас попросят ввести информацию, которая будет включена в запрос вашего сертификата. То, что вы будете вводить, называется Distinguished Name или DN. Там всего несколько полей, которые можно оставить пустыми. В некоторых полях будут значения по умолчанию. Если вы введёте ‘.’, то поле будет оставлено пустым.

Далее:

Country Name (2 letter code) [AU]:

Перевод:

Двухбуквенное имя страны (двухбуквенный код)

Далее:

State or Province Name (full name) [Some-State]:

Перевод:

Название штата или провинции/области (полное имя)

Далее:

Locality Name (eg, city) []:

Перевод:

Название населённого пункта (например, города)

Далее:

Organization Name (eg, company) [Internet Widgits Pty Ltd]:

Перевод:

Название организации (т.е. компании).

Далее:

Organizational Unit Name (eg, section) []:

Перевод:

Подразделение организации (т.е. отдел)

Далее:

Common Name (e.g. server FQDN or YOUR name) []:

Перевод:

Общее имя (например, FQDN сервера или ВАШЕ имя). Это самая важная часть — здесь нужно ввести доменное имя. Можете ввести localhost.

Далее:

Email Address []:

Перевод:

Адрес электронной почты

Далее:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

Перевод:

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

Теперь выполните команду:

openssl.exe x509 -req -days 365 -in localhost.csr -signkey localhost.key -out localhost.crt

В результате в каталоге C:\Server\bin\Apache24\bin\ должны появиться три новых файла:

  • localhost.key
  • localhost.csr
  • localhost.crt

Из них нам понадобятся только два:

  • localhost.key
  • localhost.crt

Как в Windows для Apache подключить SSL сертификаты

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

LoadModule ssl_module modules/mod_ssl.so
 
Listen 443
<VirtualHost *:443>
    ServerName www.example.com
    SSLEngine on
    SSLCertificateFile "/путь/до/www.example.com.crt"
    SSLCertificateKeyFile "/путь/до/www.example.com.key"
</VirtualHost>

Для настройки использования SSL на локальном веб-сервере Apache в Windows следуйте инструкции ниже (в моём случае веб-сервер установлен по этой инструкции, если у вас не так, то отредактируйте пути до файлов).

В каталоге C:\Server\ создайте новую папку certs и переместите туда файлы localhost.key и localhost.crt.

В директории C:\Server\bin\Apache24\conf\ откройте текстовым редактором файл httpd.conf. В самый низ добавьте туда строки:

LoadModule ssl_module modules/mod_ssl.so

Listen 443
<VirtualHost _default_:443>
    DocumentRoot "c:/Server/data/htdocs/"
    ServerName localhost:443
    ServerAdmin admin@example.com
    ErrorLog "${SRVROOT}/logs/error-ssl.log"
    TransferLog "${SRVROOT}/logs/access-ssl.log"

    SSLEngine on

    SSLCertificateFile "C:\Server\certs\localhost.crt"
    SSLCertificateKeyFile "C:\Server\certs\localhost.key"
</VirtualHost>

Обратите внимание, что вам может понадобиться отредактировать следующие директивы

  • DocumentRoot — укажите путь до сайтов на сервере
  • ServerName — укажите имя вашего хоста, если это не локалхост

Обратите внимание, что мы не просто поместили эти строки в конфигурационный файл, а заключили их в контейнер VirtualHost. Дело в том, что если этого не сделать, то директива SSLEngine on включит SSL для всего веб-сервера, и даже при попытке открыть сайты на 80 порту, эти подключения будут обрабатываться как HTTPS, что вызовет ошибку «Bad Request. Your browser sent a request that this server could not understand». По этой причине эти настройки помещены в контейнер виртуального хоста. Обратите внимание, что используется ключевое слово _default_ — то есть сюда будут собираться все запросы на 443 порт если они не предназначены для другого хоста, который также настроен. То есть при желании вы можете создать больше виртуальных хостов для работы с HTTPS, при этом вместо _default_ указывайте IP хоста или символ * (звёздочка).

Связанная статья: Виртуальный хост Apache по умолчанию. _default_ и catch-all в Apache

После этого сохраните изменения, закройте файл и перезапустите веб-сервер.

c:\Server\bin\Apache24\bin\httpd.exe -k restart

Для проверки сделанных изменений, перейдите по адресу https://localhost/ (протокол HTTPS). Поскольку сертификат является самоподписанным, то появится такое сообщение:

К самоподписанным сертификатам нет доверия и эту ошибку нельзя убрать без добавления таких сертификатов в доверенные. Для перехода нажмите «Всё равно продолжить».

Как уже было сказано, валидные сертификаты нужно покупать, либо использовать тестовые. В чём подвох использования тестовых сертификатов? Формально, в какой-то момент их могут перестать выдавать, но, на самом деле, уже сейчас многие сайты годами живут с такими тестовыми сертификатами. На современных хостингах настроено автоматическое подключение и продление таких сертификатов — это просто супер удобно. Обычно на хостингах предусмотрено некоторое количество абсолютно бесплатных SSL сертификатов с автоматическим продлением, но за небольшую плату (10 рублей в месяц), можно подключить тестовые сертификаты для любого количества сайтов. Пример такого хостинга здесь.

Решение проблем

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

Can't open C:\Program Files\Common Files\SSL/openssl.cnf for reading, No such file or directory
9112:error:02001003:system library:fopen:No such process:crypto\bio\bss_file.c:72:fopen('C:\Program Files\Common Files\SSL/openssl.cnf','r')
9112:error:2006D080:BIO routines:BIO_new_file:no such file:crypto\bio\bss_file.c:79:
unable to find 'distinguished_name' in config
problems making Certificate Request
9112:error:0E06D06A:configuration file routines:NCONF_get_string:no conf or environment variable:crypto\conf\conf_lib.c:270:

Главная подсказка в первой строке: Can’t open C:\Program Files\Common Files\SSL/openssl.cnf for reading, No such file or directory — она означает, что возникла ошибка чтения файла C:\Program Files\Common Files\SSL/openssl.cnf из-за того, что он отсутствует.

Файл openssl.cnf поставляется с самим веб-сервером Apache и находится в папке conf. Поэтому есть несколько вариантов, как исправить эту ошибку. Например, можно создать нужные папки и скопировать туда этот файл. Но можно пойти более простым путём — на время создания сертификатов установить переменную окружения OPENSSL_CONF указав в ней правильный путь до файла.

Также нужно переключиться из PowerShell в обычную командную строку Windows, поскольку иначе переменная окружения почему-то не устанавливается. Допустим, сервер размещён в папке C:\Server\bin\Apache24\bin\, тогда файл openssl.cnf расположен по пути C:\Server\bin\Apache24\conf\openssl.cnf, в этом случае, чтобы исправить ошибку Can’t open C:\Program Files\Common Files\SSL/openssl.cnf for reading, No such file or directory нужно выполнить:

cmd
cd C:\Server\bin\Apache24\bin\
set OPENSSL_CONF=C:\Server\bin\Apache24\conf\openssl.cnf

Отредактируйте пути в этих командах в соответствии с вашей структурой папок.

Связанные статьи:

  • Ошибка «You’re speaking plain HTTP to an SSL-enabled server port» (РЕШЕНО) (100%)
  • Apache для Windows (51.2%)
  • Как запустить Apache на Windows (51.2%)
  • Документация по Apache на русском языке (51.2%)
  • Как подключить PHP к Apache на Windows (51.2%)
  • Как в Apache под Windows настроить автоматическую ротацию и очистку логов (RANDOM — 51.2%)

Обновлено:
Опубликовано:

Используемые термины: Apache, CentOS, Ubuntu, FreeBSD.

Инструкция написана для операционных систем на базе UNIX.

Получение сертификата
Модуль Apache для работы с SSL
Настройка веб-сервера
Проверка
Редирект с http на https
Apache + NGINX

Шаг 1. Создание сертификата

Для боевого сервера, сертификат должен быть получен от доверенного центра сертификации — либо локального для компании, либо коммерческого. Или получен бесплатно от Let’s Ecnrypt.

Для тестовой среды можно сгенерировать самоподписанный сертификат. Для этого сперва переходим в рабочую папку.

а) на Red Hat / CentOS:

cd /etc/httpd

б) на Debian / Ubuntu:

cd /etc/apache2

в) во FreeBSD:

cd /usr/local/etc/apache24

Создаем папку для сертификатов и переходим в нее:

mkdir ssl ; cd ssl

И генерируем сертификат:

openssl req -new -x509 -days 1461 -nodes -out cert.pem -keyout cert.key -subj «/C=RU/ST=SPb/L=SPb/O=Global Security/OU=IT Department/CN=test.dmosk.local/CN=test»

* в данном примере созданы открытый и закрытый ключи на 4 года (1461 день); значения параметра subj могут быть любыми в рамках тестирования.

Шаг 2. Установка модуля SSL для Apache

Прежде, чем устанавливать модуль, выполняем команду:

apachectl -M | grep ssl

Если видим строчку, на подобие:

ssl_module (shared)

Спускаемся к шагу 3 данной инструкции.

Иначе, устанавливаем httpd ssl_module.

а) Для CentOS:

yum install mod_ssl

б) Для Ubuntu/Debian:

a2enmod ssl

в) Для FreeBSD:

Открываем файл конфигурации apache:

ee /usr/local/etc/apache24/httpd.conf

* подразумевается, что используется apache 2.4.

Находим и снимаем комментарии со следующих строчек:


LoadModule ssl_module libexec/apache24/mod_ssl.so

Include etc/apache24/extra/httpd-ssl.conf

И ставим комментарии в следующих строках:

#<IfModule ssl_module>
#SSLRandomSeed startup builtin
#SSLRandomSeed connect builtin
#</IfModule>

Чтобы настройки применились, необходимо перезапустить веб-сервер одной из команд:

systemctl restart httpd

systemctl restart apache2

service apache2 restart

* первая, как правило, используется в системах на базе RPM, вторая — DEB, третья — BSD.

Шаг 3. Настройка Apache

Выходим из папки ssl:

cd ..

Открываем файл с настройкой виртуальный доменов.

Для CentOS:

vi conf.d/site.conf

* где site.conf — конфигурационный файл для конкретного сайта

Для Ubuntu/Debian:

vi sites-enabled/site

Для FreeBSD:

ee extra/httpd-vhosts.conf

В открытый файл добавляем следующее:

<VirtualHost *:443>
    ServerName site.ru
    DocumentRoot /var/www/apache/data
    SSLEngine on
    SSLCertificateFile ssl/cert.pem
    SSLCertificateKeyFile ssl/cert.key
    #SSLCertificateChainFile ssl/cert.ca-bundle
</VirtualHost>

* где:

  • ServerName — домен сайта;
  • DocumentRoot — расположение файлов сайта в системе;
  • SSLCertificateFile и SSLCertificateKeyFile — пути до файлов ключей, которые были сгенерированы на шаге 1;
  • SSLCertificateChainFile — при необходимости, путь до цепочки сертификатов (если используем не самоподписанный сертификат).

Проверяем корректность настроек в Apache:

apachectl configtest

Если видим:

Syntax OK

Перечитываем конфигурацию apache:

apachectl graceful

Шаг 4. Проверка работоспособности

Открываем браузер и переходим на наш сайт, добавив https://. При использовании самоподписного сертификата (как в нашем случае), обозреватель выдаст предупреждение, что передача данных не безопасна. Подтверждаем наше намерение открыть сайт. Если все работает, переходим к шагу 5.

Если сайт не заработал, пробуем найти причину по log-файлу. Как правило, он находится в каталоге /var/log/apache или /var/log/httpd.

Шаг 5. Настройка редиректа

Чтобы все запросы по http автоматически перенаправлялись на https, необходимо настроить перенаправление (redirect). Есть несколько способов это сделать.

В конфигурационном файле

Открываем файл с настройкой виртуальных доменов (как в шаге 3) и дописываем следующее:

<VirtualHost *:80>
    ServerName site.ru
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

* в конкретном примере, мы перенаправили все запросы для сайта site.ru.
** обратите особое внимание, что если у Вас уже есть VirtualHost *:80 для настраиваемого сайта, необходимо его закомментировать или отредактировать.

В файле .htaccess

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Установка модуля rewrite

Чтобы перенаправление работало в Apache, необходимо установить модуль rewrite.

а) в CentOS открываем конфигурационный файл и проверяем наличие строки:

vi /etc/httpd/conf.modules.d/00-base.conf

LoadModule rewrite_module modules/mod_rewrite.so

* если ее нет, добавляем; если она закомментирована, снимаем комментарий. 

systemctl restart httpd

б) в Ubuntu:

a2enmod rewrite

systemctl restart apache2

Apache + NGINX

При использовании веб-сервера на базе и Apache и NGINX, как правило, наружу смотрит последний. В таком случае, именно он будет отвечать на http-запросы, и в таком случае нужно настраивать SSL на NGINX.

Сегодня защищенное соединение перестало быть уделом сайтов, работающих с пользовательскими данными, а стало насущной необходимостью для всех, даже если у вас простой блог о личном увлечении. Большинство современных браузеров при заходе на простой HTTP-сайт уже указывают в адресной строке, что подключение не защищено, но в скором будущем начнут помечать такие сайты как небезопасные. Тем более что с приходом Let’s Encrypt шифрование стало доступно каждому и настроить его несложно, о чем мы и расскажем в данной статье.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Начнем мы с наиболее популярного веб-сервера Apache, первоначальная настройка которого выполнена по нашей статье: Настраиваем веб-сервер на базе Apache в Debian / Ubuntu Server. В данной статье будет использоваться Apache 2.4 установленный в среде Debian 10, но все сказанное ниже будет справедливо для любого основанного на Debian или Ubuntu дистрибутива, а с некоторыми поправками — для любой Linux системы.

Будем считать, что у нас уже настроен как минимум один виртуальный хост, на котором работает сайт, допустим, example.com, минимальная конфигурация виртуального хоста должна выглядеть примерно так:

<VirtualHost *:80>
ServerName example.com
ServerAdmin mail@example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com
CustomLog ${APACHE_LOG_DIR}/example.com.access.log combined
ErrorLog ${APACHE_LOG_DIR}/example.com.error.log

<Directory /var/www/example.com>
Options -Includes -Indexes -ExecCGI
AllowOverride All
</Directory>
</VirtualHost>

Мы не будем подробно описывать значение опций, это сделано в указанной нами статье, а конфигурация приведена для примера, на который мы будем опираться в дальнейшем по ходу статьи.

Прежде всего нам потребуется настроить веб-сервер для работы с Let’s Encrypt, сделав так, чтобы сертификаты можно было легко получать для любого обслуживаемого сервером сайта без дополнительных настроек. Создадим для этого специальную директорию:

mkdir /var/www/letsencrypt

И сделаем ее владельцем веб сервер:

chown -R www-data:www-data /var/www/letsencrypt

Затем создадим файл конфигурации для Аpache:

touch /etc/apache2/conf-available/le.conf

и внесем в него следующий текст:

Alias /.well-known/acme-challenge/ /var/www/letsencrypt/.well-known/acme-challenge/<Directory "/var/www/letsencrypt/.well-known/acme-challenge/">
Options None
AllowOverride None
ForceType text/plain
Require all granted
RedirectMatch 404 "^(?!/\.well-known/acme-challenge/[\w-]{43}$)"
</Directory>

Эта настройка будет перенаправлять все запросы к /.well-known/acme-challenge любого сайта в созданную нами директорию /var/www/letsencrypt.

Подключим конфигурационный файл:

a2enconf le

и проверим конфигурацию на ошибки:

apachectl -t

Затем перезапустим веб-сервер

service apache2 restart

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

apt install certbot

Если вы используете более старые дистрибутивы, то обратитесь к нашей статье: Получаем сертификаты Let’s Encrypt при помощи Certbot

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

certbot certonly --dry-run --webroot -w /var/www/letsencrypt -d example.com -d www.example.com

За тестовый режим отвечает ключ —dry-run, ключ —webroot указывает используемый плагин, в нашем случае отвечающий за работу с уже имеющемся веб-сервером. Опция -w указывает корневую директорию для Let’s Encrypt, которую мы создали и настроили ранее, а через ключи -d перечисляются домены и поддомены, для которых требуется получить сертификат. Если все прошло успешно вы получите лаконичное сообщение:

apache-LAMP-SSL-001.png

После того, как тест прошел успешно можно выполнить настоящее получение сертификатов, для этого просто уберите ключ —dry-run из команды.

certbot certonly --webroot -w /var/www/letsencrypt -d example.com -d www.example.com

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

apache-LAMP-SSL-002.png

Все полученные сертификаты, точнее символические ссылки на них, хранятся в /etc/letsencrypt/live в директориях с именами доменов. Настройки продления можно найти в /etc/letsencrypt/renewal, откроем настройку нашего домена /etc/letsencrypt/renewal/example.com.conf и внесем в секцию [renewalparams] следующую опцию:

[renewalparams]
...
renew_hook = service apache2 reload

Порядок расположения опций значения не имеет. Параметр renew_hook позволяет указать действие, которое следует выполнить при успешном продлении сертификата, в нашем случае это перезапуск веб-сервера Apache.

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

cp /etc/apache2/sites-available/example.com.conf  /etc/apache2/sites-available/example.com-ssl.conf 

Затем откроем его и сразу изменим порт с 80 на 443:

<VirtualHost *:443>

Также советуем изменить имена файлов логов:

CustomLog ${APACHE_LOG_DIR}/example.com-ssl.access.log combined
ErrorLog ${APACHE_LOG_DIR}/example.com-ssl.error.log

Ниже добавим:

SSLEngine onSSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCACertificateFile /etc/letsencrypt/live/example.com/chain.pem

Эти опции включают SSL и указывают пути к сертификатам. В теории этого достаточно, но в современных условиях такие настройки не будут надежными, так как разрешают использование устаревших протоколов и нестойких шифров. Для получения современной и актуальной конфигурации SSL мы советуем воспользоваться сервисом moz://a SSL Configuration Generator, который предлагает несколько вариантов настроек, оптимальным является использование опции Intermediate.

Но не следует добавлять сразу все опции, ряд из них могут иметь достаточно «неожиданное» действие на неподготовленного пользователя. Поэтому сначала разберемся с шифрами и протоколами:

SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384

Первая опция отключает устаревшие и небезопасные протоколы SSLv3, TLS 1.0 и TLS 1.1, вторая задает доступные к использованию шифры. Создание набора шифров — это наиболее сложная задача, поэтому лучше довериться специалистам Mozilla, нежели изобретать велосипед самостоятельно.

Затем добавим:

SSLHonorCipherOrder off
SSLSessionTickets off

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

Также разрешим использование протокола HTTP/2, если это возможно:

Protocols h2 http/1.1

Сохраним файл конфигурации и подключим его:

a2ensite example.com-ssl

Также нам потребуется модуль SSL:

a2enmod ssl

Проверим конфигурацию и перезапустим веб-сервер:

apachectl -t
service apache2 restart

После чего откройте сайт, явно указав протокол https://example.com

apache-LAMP-SSL-003.png

На этом этапе вы можете столкнуться с проблемой смешанного содержимого, когда определенные ресурсы сайта, например, изображения или скрипты загружаются по незащищенному протоколу HTTP. Если к первым браузеры относятся относительно лояльно, просто убирая «замочек» в адресной строке, то вторые по умолчанию блокируются. Поэтому внимательно изучите код вашего сайта и замените везде, где это возможно, получение ресурсов на защищенный протокол HTTPS. Если это невозможно, то от таких ресурсов следует отказаться.

Добившись идеальной работы сайта по HTTPS, двинемся дальше, сначала включим технологию HSTS, которая принудительно активирует защищенное соединение, если сайт хоть один раз был успешно через него загружен. При использовании данного механизма браузер будет принудительно переключаться на HTTPS даже если в строке подключения пользователь явно укажет протокол HTTP, это позволяет успешно бороться с атаками на понижение степени защиты.

Для этого добавим в конфигурацию виртуального хоста строку:

Header always set Strict-Transport-Security "max-age=63072000"

Также включим механизм OCSP Stapling, который позволяет ускорить проверку сертификата клиентом, что особенно важно для мобильных пользователей. Добавим строку:

SSLUseStapling On

Однако этого недостаточно, сохраним настройки виртуального хоста и снова откроем файл /etc/apache2/conf-available/le.conf, куда добавим:

SSLStaplingCache "shmcb:logs/ssl_stapling(32768)"

Для работы вышеперечисленных опций нам потребуется модуль Headers:

a2enmod headers

Снова проверяем конфигурацию и перезапускаем сервер:

apachectl -t
service apache2 restart

Самое время проверить HSTS в действии: перейдите на сайт по защищенному протоколу, а затем попробуйте открыть его HTTP версию, если HSTS работает, то у вас это не получится.

И в завершение настроим перенаправление клиентов с HTTP версии сайта на HTTPS, для этого откроем настройки виртуального хоста HTTP версии /etc/apache2/sites-available/example.com.conf и удалим из него все строки кроме:

<VirtualHost *:80>
ServerName example.com
ServerAdmin mail@example.com
ServerAlias www.example.com

</VirtualHost>

А затем добавим:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Сохраним файл конфигурации и подключим модуль Rewrite:

a2enmod rewrite

И еще раз перезапустим сервер, не забыв проверить конфигурацию:

apachectl -t
service apache2 restart

Теперь наш сервер настроен с учетом всех современных методик, проверить это можно на сайте SSL Labs, с текущими настройками была получена высшая оценка A+:

apache-LAMP-SSL-004.png

Как видим, настроить веб-сервер Apache для работы по HTTPS совсем несложно. А Let’s Encrypt обеспечит бесплатное получение и обновление сертификатов в автоматическом режиме. Если вы заметили, то мы ничего не писали про настройку автообновления, Certbot все уже сделал за нас.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Download Windows Speedup Tool to fix errors and make PC run faster

This post will help you change Alt+Tab settings in Windows 11/10. When we press Alt+Tab hotkey, it shows the thumbnails of opened program windows and Microsoft Edge tabs and helps switch from one application to another. If you want, you can customize this default Alt+Tab behavior you can do so.

  • One option lets you use the old or classic Alt+Tab menu (also known as Task Switcher) that shows only icons of opened programs and not thumbnails.
  • The second option helps to set whether you want to hide or show Microsoft Edge tabs in the Alt+Tab menu, show only opened windows, opened windows, and 3 most recent tabs of Microsoft Edge, etc.

Before you do so, make sure that the Alt+Tab hotkey is working fine. If Alt+Tab keys are not working properly, then you should fix it first. After that, try the following methods to customize Alt+Tab settings:

  1. Using Registry Editor
  2. Using the Settings app.

1] Switch to old Alt+Tab menu using Registry Editor

This method helps to switch from the modern or default Alt+Tab menu to the old Alt+Tab menu and vice-versa.

change Alt+Tab settings in Windows 10

  1. Open Registry Editor
  2. Access Explorer key
  3. Create AltTabSettings DWORD value
  4. Change value data of AltTabSettings DWORD value.

At first, launch Registry Editor.

Go to Explorer key. Its path is-

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer

access explorer key

Under Explorer key, create AltTabSettings DWORD value. For this, right-click on that key, go to the New menu, and click on DWORD (32-bit) Value.

When the value is created, rename it to AltTabSettings.

create AltTabSettings dword value

Double-click that AltTabSettings value and a small box will open. There, in the Value data field, add 1, and press OK.

set AltTabSettings value data to 1

Now restart File Explorer. Use Alt+Tab hotkey. You will see that the classic Alt+Tab menu is visible.

To revert the changes, follow the above steps, add 0 in the Value data field, and again restart File Explorer to use the default Alt+Tab menu.

2] Show or hide Microsoft Edge Tabs in Alt+Tab menu using Settings app

This option helps to set if you want to show only opened windows, opened windows as well as Microsoft Edge tabs, etc. Let’s see how to do it.

Change Alt+Tab settings in Windows 11

  1. Launch the Windows 11 Settings app using Win+I hotkey
  2. Click on System
  3. Access Multitasking on the right-hand section
  4. Open the Alt+Tab section drop-down on the right-hand side
  5. Use that menu and take the necessary action.

In Windows 10, the setting is here:

show or hide microsoft edge tabs, only opened windows etc

Using these two native ways, you are able to customize Alt+Tab settings.

If you want to customize Alt+Tab in a different way, such as changing its background dimming or making the grid background transparent or opaque, you can try our free tool, AltPlusTab.

Related: Alt Tab not working in Games on Windows 11.

Laxman has done Bachelor’s in Computer Science, followed by an MBA. Writing about Windows OS and the free software and services that are available for the Windows operating system is what excites him.

Reader Interactions

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Разблокировка загрузчика windows phone
  • Как поставить android приложение на windows
  • Как отключить местоположение на компьютере windows 11
  • Windows 10 домашняя учетная запись гостя
  • Код активации windows 10 корпоративная ltsc