Откройте PowerShell от имени администратора и выполните:
New-SelfSignedCertificate -DnsName "имя_вашего_сервера" -CertStoreLocation "cert:\LocalMachine\My"Внутри кавычек «имя_вашего_сервера» замените на имя вашего сервера, должно получиться примерно так:
New-SelfSignedCertificate -DnsName "server1" -CertStoreLocation "cert:\LocalMachine\My"
Привязать сертификат к сайту в IIS

Должен отобразиться ваш сертификат.

Выбираем Default Web Site, в правой панели «Привязки…»


Переопубликовать базу 1С
Получить публичный сертификат (рекомендуется)
Если у вас есть доменное имя (например, 1c.company.ru), самый простой способ — использовать Let’s Encrypt через утилиту win-acme или letsencrypt-win-simple. Она автоматически выпустит сертификат и привяжет его к IIS .
Также можно приобрести сертификат в коммерческом центре сертификации и импортировать его вручную.
🤖 PowerShell-скрипт для полной автоматизации
# ==============================================
# Запуск от имени Администратора
# ==============================================
if (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {
Write-Host "❌ Ошибка: Запустите PowerShell от имени Администратора!" -ForegroundColor Red
exit 1
}
# ==============================================
# Параметры (измените под себя)
# ==============================================
$siteName = "Default Web Site" # Имя вашего сайта в IIS
$dnsName = "localhost" # Для самоподписанного сертификата (или имя сервера)
$publicationName = "my_base" # Имя публикации 1С (если нужно переопубликовать)
# ==============================================
# 1. Создание самоподписанного сертификата
# ==============================================
Write-Host "📜 Создание самоподписанного сертификата..." -ForegroundColor Cyan
$cert = New-SelfSignedCertificate -DnsName $dnsName -CertStoreLocation "cert:\LocalMachine\My"
$thumbprint = $cert.Thumbprint
Write-Host "✅ Сертификат создан, отпечаток: $thumbprint" -ForegroundColor Green
# ==============================================
# 2. Привязка HTTPS к сайту
# ==============================================
Write-Host "🔗 Привязка HTTPS к сайту $siteName..." -ForegroundColor Cyan
Import-Module WebAdministration
# Удаляем существующую HTTPS-привязку, если есть
Get-WebBinding -Name $siteName -Protocol "https" | Remove-WebBinding
# Добавляем новую
New-WebBinding -Name $siteName -Protocol "https" -Port 443 -IPAddress "*"
# Привязываем сертификат
$binding = Get-WebBinding -Name $siteName -Protocol "https"
$binding.AddSslCertificate($thumbprint, "my")
Write-Host "✅ HTTPS привязка добавлена" -ForegroundColor Green
# ==============================================
# 3. Настройка HTTP → HTTPS перенаправления
# ==============================================
Write-Host "🔄 Настройка перенаправления HTTP -> HTTPS..." -ForegroundColor Cyan
# Проверяем, установлен ли URL Rewrite
$rewriteModule = Get-WindowsFeature Web-Url-Rewrite
if (-not $rewriteModule.Installed) {
Write-Host "⚠️ Модуль URL Rewrite не установлен. Установка..." -ForegroundColor Yellow
Install-WindowsFeature -Name Web-Url-Rewrite
Write-Host "✅ URL Rewrite установлен. Требуется перезапуск IIS." -ForegroundColor Green
iisreset
}
# Путь к конфигурационному файлу сайта
$webConfigPath = "$env:SystemRoot\System32\inetsrv\config\applicationHost.config"
# Создаём правило URL Rewrite через appcmd (альтернатива — прямое редактирование web.config)
$ruleXml = @"
<rule name="Redirect HTTP to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>
"@
# Применяем правило через appcmd (более надёжно)
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" set config -section:system.webServer/rewrite/globalRules /+"[name='Redirect HTTP to HTTPS']" /commit:apphost
Write-Host "✅ Правило перенаправления добавлено" -ForegroundColor Green
# ==============================================
# 4. Переопубликация 1С (если нужно)
# ==============================================
$onecBinPath = "C:\Program Files\1cv8\8.3.25.1486\bin" # Укажите ваш путь к платформе
$webinst = "$onecBinPath\webinst.exe"
if (Test-Path $webinst) {
Write-Host "📦 Переопубликация базы 1С..." -ForegroundColor Cyan
$publishPath = "C:\inetpub\wwwroot\$publicationName"
& $webinst -ws IIS -dir $publishPath -wsdir $publicationName -publish
Write-Host "✅ База переопубликована" -ForegroundColor Green
} else {
Write-Host "⚠️ webinst.exe не найден. Переопубликуйте базу вручную через конфигуратор." -ForegroundColor Yellow
}
Write-Host "`n🎉 Настройка HTTPS завершена!" -ForegroundColor Green
Write-Host " Ваша база доступна по адресу: https://$dnsName/$publicationName" -ForegroundColor Yellow