Вы могли посмотреть на опцию TCPKeepAlive в sshd_config на сервере. Похоже, включают ли этому, Вы будете видеть больше разъединений (который кажется небольшим счетчиком, интуитивным, пока Вы не прочитаете документ) как любые изменения маршрута между Вами, и сервер приведет к разъединению. Это вряд ли произойдет на LAN, но довольно вероятно через Интернет.
Вы не можете просто сгенерировать случайный ключ для своего сертификата; вы должны использовать тот, с которым он был создан. В сертификате есть открытый ключ (обычно RSA), который клиент будет использовать в процессе обмена ключами; для завершения обмена ключами вам понадобится закрытый ключ, который (среди прочего) подтверждает, что сертификат принадлежит вам. В противном случае вы можете просто использовать любой сертификат, который вы найдете в Интернете, и выдавать себя за людей.
Если вы предоставите неверную информацию о сертификате, apache завершится ошибкой.
Цепочка сертификатов, которую вы получили, вероятно, содержит три сертификата: один для корневого ЦС ( Я подозреваю, что class-root.crt), промежуточный ЦС, подписанный этим корневым ЦС (root-2int.cer), и сертификат вашего сервера, подписанный промежуточным ЦС. Так устроены почти все SSL-сертификаты. Корневому сертификату будут доверять клиенты; ваш сервер должен предоставить свой собственный сертификат и другие сертификаты, которые связывают его в цепочку с корнем (например, корневой и промежуточный сертификаты).
Это делает файл цепочки. Чтобы создать файл цепочки, вы должны объединить промежуточные сертификаты и сертификаты CA в один файл, например
cat /etc/ssl/crt/root-2int.cer /etc/ssl/crt/class-root.crt > /etc/ssl/crt/chain.crt
Затем укажите chain.crt в качестве SSLCertificateChainFile
. Это приведет к тому, что Apache отправит эти два сертификата вместе с вашим в качестве доказательства действительности.
Вам также необходимо будет извлечь сертификат и ключ из вашего PFX-файла, который содержит оба:
openssl pkcs12 -nocerts -in wildcard.ssl.pfx -out wildcard.key
openssl pkcs12 -clcerts -nokeys -in wildcard.ssl.pfx -out wildcard.crt
Затем, если закрытый ключ зашифрован (например, у вас есть кодовая фраза), если вы хотите, чтобы apache мог запускаться без ввода пароля, вы должны расшифровать его (и защитить его разрешениями файловой системы: режим 0400 и принадлежит root: например, root). Для этого (при условии RSA):
openssl rsa -in wildcard.key -out wildcard-decrypted.key
Затем вы можете использовать эти два файла:
SSLCertificateFile /etc/ssl/crt/wildcard.crt
SSLCertificateKeyFile /etc/ssl/crt/wildcard-decrypted.key
Пока все сертификаты совпадают, это должно работать. Если вы хотите проверить, соответствует ли ваш сертификат вашему ключу, используйте эти две команды (вывод должен быть таким же, и снова предполагается RSA):
openssl x509 -modulus -noout -in /etc/ssl/crt/wildcard.crt
openssl rsa -modulus -noout -in /etc/ssl/crt/wildcard-decrypted.key