Я создал эти записи в файле хостов Windows
127.0.0.1 a.domain.name
127.0.0.1 b.domain.name
127.0.0.1 c.domain.name
, где
127.0.0.1 - ip моего сервера
[a, b, c] .domain. name - домены, с которых мне нужно перенаправить на мой сервер
Итак, как мне создать самозаверяющий сертификат, чтобы получить доверие от браузеров и избежать ошибки HSTS?
Чтобы уточнить: самозаверяющему сертификату будут доверять только браузеры, которые вручную доверяли этому сертификату. Все остальные получат предупреждения.
В Windows вы должны запустить команду powershell New-SelfSignedCertificate -CertStoreLocation cert: \ localmachine \ my -DnsName * .test.com -FriendlyName "star_test_com-2020" -NotAfter (Get-Date) .AddYears (2) )
, чтобы создать самозаверяющий сертификат с подстановочными знаками для test.com со сроком действия два года.
Затем вы можете найти в меню «Пуск» управлять сертификатами компьютера
, чтобы экспортировать сертификат для использования в других компьютеры. Если вы просто хотите доверять сертификату на клиенте, вам понадобится копия, которая будет экспортирована без закрытого ключа. Если вы хотите предоставить сертификат с сервера, вам потребуется копия, которая будет экспортирована с закрытым ключом.
Чтобы ваш собственный компьютер мог доверять сертификату, он должен существовать в Доверенные корневые центры сертификации
в диспетчере сертификатов. Вы можете скопировать его туда из хранилища Personal
, перетащив его туда с помощью мыши.
Чтобы службы (Windows / Microsoft) могли предоставлять сертификат, он обычно должен существовать в LocalMachine \ Personal store.
Однако: если вы хотите публично представлять услуги, вам нужно будет использовать сертификат, подписанный CA. Это определенно дешево и, вероятно, проще всего использовать через Let's Encrypt , но у меня нет опыта их использования для серверов Windows. Альтернативой является оплата сертификатов коммерческого центра сертификации.