Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2023-02-01 11:31:12

  markus78 - Użytkownik

markus78
Użytkownik
Zarejestrowany: 2006-08-08

konfiguracja SSL Apache2 Debian 11

Witam!
Jak w tytule, moje pytanie to jak uruchmic? Otóż mam zainstalowany na Debian 11: Apache 2. Moduł SSL z polecenia

Kod:

a2enmod ssl enabled

wynika że jest urochomione (Module ssl already enabled) ale nie działa po https (pokazuje nie mozna wyświetlić strony) jakby wgl nie było włączone SSL (ERR_SSL_PROTOCOL_ERROR).

przykład:
https://188.125.147.108/test/

bez https:
http://188.125.147.108/test/

czy coś muszę jeszcze skonfigurować (porty 80 i 443 na firewallu mam otwarte)?

Offline

 

#2  2023-02-01 13:00:18

  barrandov - Nowy użytkownik

barrandov
Nowy użytkownik
Skąd: Jaworzno
Zarejestrowany: 2017-01-10

Re: konfiguracja SSL Apache2 Debian 11

W pliku /etc/apache2/ports.conf
oprócz "Listen 80" powinien być wpis:

Kod:

<IfModule ssl_module>
        Listen 443
</IfModule>

Ponadto,
należy włączyć jakąś stronę z SSL,
przykładowo /etc/apache2/sites-available/default-ssl.conf, który może wyglądać mniej więcej tak:

Kod:

<IfModule mod_ssl.c>
        <VirtualHost _default_:443>
                ServerAdmin webmaster@localhost
                DocumentRoot /var/www/html
                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined
                SSLEngine on
                SSLCertificateFile      /etc/ssl/certs/ssl-cert-snakeoil.pem
                SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
                <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                SSLOptions +StdEnvVars
                </FilesMatch>
                <Directory /usr/lib/cgi-bin>
                                SSLOptions +StdEnvVars
                </Directory>
        </VirtualHost>
</IfModule>

gdzie port musi być taki, jak zdefiniowany w ports.conf
Stronę default-ssl.conf włącza się poprzez polecenie:

Kod:

a2ensite default-ssl.conf

a następnie reload apache'a:

Kod:

systemctl reload apache2

POST

Offline

 

#3  2023-02-01 13:17:32

  markus78 - Użytkownik

markus78
Użytkownik
Zarejestrowany: 2006-08-08

Re: konfiguracja SSL Apache2 Debian 11

Pomogło! Nie aktywowałem strony default-ssl.conf za pomocą polecenia a2ensite. Dzięki bardzo!

Offline

 

#4  2023-02-02 08:03:14

  markus78 - Użytkownik

markus78
Użytkownik
Zarejestrowany: 2006-08-08

Re: konfiguracja SSL Apache2 Debian 11

Mam tylko problem z vhostami teraz. Otóż jaki bym vhost nie ustawił w tym pliku to wskazuje zawsze na stronę z błedem i wyswietla ERR_SSL_PROTOCOL_ERROR.

Przykładowy vhos jaki wstawiłem:

Kod:

<VirtualHost *:443>
ServerAdmin admin@mojadomena.pl
DocumentRoot /var/www/html/mojastrona
ServerName www.mojadomena.pl
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/624e82f3fa38eb9f6eced7e9d1cb653c.crt
SSLCertificateKeyFile /etc/apache2/ssl/624e82f3fa38eb9f6eced7e9d1cb653c.key
SSLCertificateChainFile /etc/apache2/ssl/ca-bundle.crt
</VirtualHost>

Ostatnio edytowany przez markus78 (2023-02-02 08:09:36)

Offline

 

#5  2023-02-02 09:00:19

  barrandov - Nowy użytkownik

barrandov
Nowy użytkownik
Skąd: Jaworzno
Zarejestrowany: 2017-01-10

Re: konfiguracja SSL Apache2 Debian 11

Domena, na jaką wydany jest certyfikat musi być taka sama jak domena na którą wchodzisz w przeglądarce internetowej.

Jeżeli masz komercyjny certyfikat SSL wydany przez zaufaną firmę wydającą certyfikaty dla twojej domeny, np. mojastrona.mojserwer.pl, to będzie działać jeżeli wchodzisz przez przeglądarkę na ten adres, czyli https://mojastrona.mojserwer.pl.
Jeżeli wchodzisz przez przeglądarkę na adres IP: https://188.125.147.108/test/, to będzie się pojawiał błąd.
Jeżeli w systemie DNS nie ma przypisania tej domeny do adresu IP, to trzeba go będzie dodać.
Jeżeli masz certyfikat wygenerowany przez twój serwer a nie przez zaufaną firmę wydającą certyfikaty, to w przeglądarce będzie się pojawiał błąd, że certyfikat nie jest zaufany, bez względu na to czy wchodzisz po adresie IP czy po nazwie domenowej.

Ostatnio edytowany przez barrandov (2023-02-02 09:04:20)


POST

Offline

 

#6  2023-02-02 09:41:41

  markus78 - Użytkownik

markus78
Użytkownik
Zarejestrowany: 2006-08-08

Re: konfiguracja SSL Apache2 Debian 11

Ale coś tu nie mogę właśnie skumać za bardzo. Nawet nie chodzi o to czy cert jest wystawiony przez firmę zaufaną czy nie, bo to pewnie najwyżej pokazałby w przeglądarce ze strona jest niezaufana, zatwierdzimy i puści nas dalej, ale bedzie https i bedzie wskazywałna stronę (najwyzej bedzie przekreslony wykrzyknik). Zresztą stronę www z wystawionym cert przez zaufaną firmę tez testowałęm i tez wyrzuca błąd mimo ze cert i klucz jest poprawny.

Utworzyłem przed chwilą na szybko w DNSie dwa wpisy oraz w pliku /etc/apache2/sites-avalable/vhosts.conf dwa vhosty dla testów:

Kod:

<VirtualHost *:443>
ServerAdmin info@miastko.net
DocumentRoot /var/www/html/strona1
ServerName strona1.miastko.net
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/70cae5dfedc0d66fb691133d3d52d2e6.crt
SSLCertificateKeyFile /etc/apache2/ssl/70cae5dfedc0d66fb691133d3d52d2e6.key
SSLCertificateChainFile /etc/apache2/ssl/ca-bundle.crt
</VirtualHost>

Kod:

<VirtualHost *:443>
ServerAdmin info@miastko.net
DocumentRoot /var/www/html/strona2
ServerName strona2.miastko.net
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/70cae5dfedc0d66fb691133d3d52d2e6.crt
SSLCertificateKeyFile /etc/apache2/ssl/70cae5dfedc0d66fb691133d3d52d2e6.key
SSLCertificateChainFile /etc/apache2/ssl/ca-bundle.crt
</VirtualHost>

a w przeglądarce i tak wskazuje zamiast na te stronę co jest w tych katalogach to pokazuje błąd:

włączyłem obsługę vhostów poleceniem

Kod:

a2ensite vhost.conf

i dowiązanie utworzyło w /etc/apache2/sites-enabled/. Restart apacha i pokazuje jak pokazuje...

To są te dwa vhosty które stworzyłem:
https://strona1.miastko.net/
https://strona2.miastko.net/

a po wpisaniu adresu IP pokazuje juz strone:
https://188.125.147.108/strona1/
https://188.125.147.108/strona2/

Offline

 

#7  2023-02-02 18:03:18

  jawojx - Użytkownik

jawojx
Użytkownik
Zarejestrowany: 2012-10-11

Re: konfiguracja SSL Apache2 Debian 11

A są widoczne w konfiguracji. Z sudo/lub roota.

Kod:

apache2ctl -S

Offline

 

#8  2023-02-02 19:33:53

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: konfiguracja SSL Apache2 Debian 11

@markus78

Masz spartoloną konfigurację SSL i jakieś pochrzanione certyfikaty:

Kod:

openssl s_client -connect strona1.miastko.net:443
CONNECTED(00000003)
140087282378560:error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error:ssl/record/rec_layer_s3.c:1555:SSL alert number 80
---
no peer certificate available
---
No client certificate CA names sent
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 189 bytes and written 321 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---

Kod:

gnutls-cli strona1.miastko.net:443
Processed 140 CA certificate(s).
Resolving 'strona1.miastko.net:443'...
Connecting to '188.125.147.108:443'...
*** Fatal error: A TLS fatal alert has been received.
*** Received alert [80]: Internal error

Jak chcesz certy na stronę publiczną, to zainteresuj się projektami certboot albo acme-sh i certami Lets'encrypt.


Czyli w Twoim przypadku certyfikat wildcard dla miastko.net i *.miastko.net

EDIT:
Prawidłowy certyfikat strony WWW na przykładzie dug.net.pl

Kod:

echo GET | openssl s_client -connect dug.net.pl:443
CONNECTED(00000003)
depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = R3
verify return:1
depth=0 CN = dug.net.pl
verify return:1
---
Certificate chain
 0 s:CN = dug.net.pl
   i:C = US, O = Let's Encrypt, CN = R3
 1 s:C = US, O = Let's Encrypt, CN = R3
   i:C = US, O = Internet Security Research Group, CN = ISRG Root X1
 2 s:C = US, O = Internet Security Research Group, CN = ISRG Root X1
   i:O = Digital Signature Trust Co., CN = DST Root CA X3
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIF9zCCBN+gAwIBAgISBBFX1uaDPnGHRR4KxQ7euNDiMA0GCSqGSIb3DQEBCwUA
MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD
EwJSMzAeFw0yMjEyMjkwNDI2MDJaFw0yMzAzMjkwNDI2MDFaMBUxEzARBgNVBAMT
CmR1Zy5uZXQucGwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1QpPc
reai7uEHGIOLVy2GTQa5FJb1N/K6GF56XBPxBja5BhNA779Q3bRkRnefwb0zMWGR
wMI7U2gt+QkahFYBQ+hx4yP59Ciiytxnpsb3ZcIq+uG7s0s/PCeRHfSchnNJ21j9
eKcjrGPAnvZGbbYEjxYlNCTiRzT1+1YFLwStF3Voi5vMbpz0H3ojZgdZN4865E81
SJGkABQEk3K/QGiN/HsAgGoFLRUJoFkUbz9CIK2+5HaK0Epe4WFBUyltzYo6MMBF
iOMkRA36DHfRtdZV5fuUIhWhLjMP5+TvFpvzHG3JuULnDLlq9OBBRaPRPF3ZccgV
zmiXG+tkjhFmiacHAgMBAAGjggMiMIIDHjAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0l
BBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYE
FEsIC7mNQb7I4u3Pl7aZYtvwH+VkMB8GA1UdIwQYMBaAFBQusxe3WFbLrlAJQOYf
r52LFMLGMFUGCCsGAQUFBwEBBEkwRzAhBggrBgEFBQcwAYYVaHR0cDovL3IzLm8u
bGVuY3Iub3JnMCIGCCsGAQUFBzAChhZodHRwOi8vcjMuaS5sZW5jci5vcmcvMIHz
BgNVHREEgeswgeiCDGQuZHVnLm5ldC5wbIIKZHVnLm5ldC5wbIITZm9ydHVua2ku
ZHVnLm5ldC5wbIISZm9ydW0uZC5kdWcubmV0LnBsghBmb3J1bS5kdWcubmV0LnBs
ghFwb2N6dGEuZHVnLm5ldC5wbIIQd3d3LmQuZHVnLm5ldC5wbIIOd3d3LmR1Zy5u
ZXQucGyCF3d3dy5mb3J0dW5raS5kdWcubmV0LnBsghZ3d3cuZm9ydW0uZC5kdWcu
bmV0LnBsghR3d3cuZm9ydW0uZHVnLm5ldC5wbIIVd3d3LnBvY3p0YS5kdWcubmV0
LnBsMEwGA1UdIARFMEMwCAYGZ4EMAQIBMDcGCysGAQQBgt8TAQEBMCgwJgYIKwYB
BQUHAgEWGmh0dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIIBAgYKKwYBBAHWeQIE
AgSB8wSB8ADuAHUAejKMVNi3LbYg6jjgUh7phBZwMhOFTTvSK8E6V6NS61IAAAGF
XFg2mQAABAMARjBEAiB+whh36CtgbLquEd/aaZ4ViaWjNBVRya4QfQ4fOXHNvgIg
Raiv8egjjiBlA+L2UCMA3xrpNRfDpmx/RRQccQpeFgUAdQC3Pvsk35xNunXyOcW6
WPRsXfxCz3qfNcSeHQmBJe20mQAAAYVcWDhzAAAEAwBGMEQCIEziIVa1VbQ+Tztp
AJMeDpQfrzGIlrMvjoZURWIBEljaAiAlpcfVQhnKot5FV6ojGZ5ZSolzXAlqdi4K
5cHwsj7ovzANBgkqhkiG9w0BAQsFAAOCAQEAUVqHvkpISwhrUlOVZDg9QrFNbJML
d1T11MmzLjkH/Hs83xPdhuKWSKOyt08L0GkVwGBOFepR71vGOqImCpN3PIyjehuR
pydv36QvhJeBnd03DOFCeDWn9T5x9zFGS8oVfi+8kjuFO2s9yAMv/YubMxCN4Ajd
EFVnkW/XpDnZ3Dg/tAugvvGiTqe/2x+l0BIXtS1iT1FGFqL/oovauedyEUA6ZHhL
KEiR+k7NQ7VOQi5c71cvpy52TDOnPDqR2SejaNZvd7Tv34qgd2wt/wlX00CWQXir
7GlNMvNsdXUMIgSkxcrX2125kkif8EyaoIwOzhV3MQuY4QjdtN8aRNY7hw==
-----END CERTIFICATE-----
subject=CN = dug.net.pl

issuer=C = US, O = Let's Encrypt, CN = R3

---
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: RSA-PSS
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 4787 bytes and written 392 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---
DONE

Kod:

echo GET | gnutls-cli dug.net.pl
Processed 140 CA certificate(s).
Resolving 'dug.net.pl:443'...
Connecting to '145.239.95.70:443'...
- Certificate type: X.509
- Got a certificate list of 3 certificates.
- Certificate[0] info:
 - subject `CN=dug.net.pl', issuer `CN=R3,O=Let's Encrypt,C=US', serial 0x041157d6e6833e7187451e0ac50edeb8d0e2, RSA key 2048 bits, signed using RSA-SHA256, activated `2022-12-29 04:26:02 UTC', expires `2023-03-29 04:26:01 UTC', pin-sha256="UYp1TmC2QoKs6k7b44HPdj9TjCSB2zZOzIkCblzMe5s="
    Public Key ID:
        sha1:5878c7bf7f940e8b3ac1c88c6ff403a2781cb0b6
        sha256:518a754e60b64282acea4edbe381cf763f538c2481db364ecc89026e5ccc7b9b
    Public Key PIN:
        pin-sha256:UYp1TmC2QoKs6k7b44HPdj9TjCSB2zZOzIkCblzMe5s=

- Certificate[1] info:
 - subject `CN=R3,O=Let's Encrypt,C=US', issuer `CN=ISRG Root X1,O=Internet Security Research Group,C=US', serial 0x00912b084acf0c18a753f6d62e25a75f5a, RSA key 2048 bits, signed using RSA-SHA256, activated `2020-09-04 00:00:00 UTC', expires `2025-09-15 16:00:00 UTC', pin-sha256="jQJTbIh0grw0/1TkHSumWb+Fs0Ggogr621gT3PvPKG0="
- Certificate[2] info:
 - subject `CN=ISRG Root X1,O=Internet Security Research Group,C=US', issuer `CN=DST Root CA X3,O=Digital Signature Trust Co.', serial 0x4001772137d4e942b8ee76aa3c640ab7, RSA key 4096 bits, signed using RSA-SHA256, activated `2021-01-20 19:14:03 UTC', expires `2024-09-30 18:14:03 UTC', pin-sha256="C5+lpZ7tcVwmwQIMcRtPbsQtWLABXhQzejna0wHFr8M="
- Status: The certificate is trusted. 
- Description: (TLS1.3-X.509)-(ECDHE-SECP256R1)-(RSA-PSS-RSAE-SHA256)-(AES-256-GCM)
- Session ID: D8:44:CD:FB:F7:03:40:7D:98:1C:9F:B4:E7:3E:44:3E:AF:49:C1:45:06:3B:73:8F:9D:58:B1:EE:49:16:BD:F9
- Options:
- Handshake was completed

- Simple Client Mode:

HTTP/1.1 400 Bad Request
Server: nginx
Date: Thu, 02 Feb 2023 18:38:04 GMT
Content-Type: text/html
Content-Length: 150
Connection: close
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: no-referrer-when-downgrade
Content-Security-Policy: default-src * data: 'unsafe-eval' 'unsafe-inline'
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

<html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx</center>
</body>
</html>
- Peer has closed the GnuTLS connection

To by było na tyle

Ostatnio edytowany przez Jacekalex (2023-02-02 19:40:31)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#9  2023-02-03 07:17:00

  markus78 - Użytkownik

markus78
Użytkownik
Zarejestrowany: 2006-08-08

Re: konfiguracja SSL Apache2 Debian 11

jawojx napisał(-a):

A są widoczne w konfiguracji. Z sudo/lub roota.

Kod:

apache2ctl -S

tak są widoczne

Offline

 

#10  2023-02-03 09:12:40

  markus78 - Użytkownik

markus78
Użytkownik
Zarejestrowany: 2006-08-08

Re: konfiguracja SSL Apache2 Debian 11

Jacekalex to nie jest ten problem, bo na innym serwerze (Debian 9) wszystko jest ok z cert i jest ta sama konfiguracja i wszystko działa, a po przerzuceniu stron, vhostów i cert na Debian 11 (świerzo zainstalowany) pojawił się ten problem.
Coś mi brakuje pewnie w konfiguracji, może ktoś wie, może jakieś pakiety jeszcze trzeba doinstalować...

Offline

 

#11  2023-02-03 17:28:50

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: konfiguracja SSL Apache2 Debian 11

markus78 napisał(-a):

Jacekalex to nie jest ten problem, bo na innym serwerze (Debian 9) wszystko jest ok z cert i jest ta sama konfiguracja i wszystko działa, a po przerzuceniu stron, vhostów i cert na Debian 11 (świerzo zainstalowany) pojawił się ten problem.
Coś mi brakuje pewnie w konfiguracji, może ktoś wie, może jakieś pakiety jeszcze trzeba doinstalować...

No to miej logi i patrzaj w logi, powinno tam pisać w acces.log i error.log o co dokładnie chodzi.


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#12  2023-02-03 17:44:35

  jawojx - Użytkownik

jawojx
Użytkownik
Zarejestrowany: 2012-10-11

Re: konfiguracja SSL Apache2 Debian 11

@markus78, wygeneruj nowe klucze dla ssl w tym Debianie 11 i zamień konfiguracje na te nowe, i dopiero jak wszystko działa z nowymi, kombinuj dalej.

Ostatnio edytowany przez jawojx (2023-02-03 17:45:45)

Offline

 

#13  2024-02-02 19:53:08

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: konfiguracja SSL Apache2 Debian 11

jawojx napisał(-a):

@markus78, wygeneruj nowe klucze dla ssl w tym Debianie 11 i zamień konfiguracje na te nowe, i dopiero jak wszystko działa z nowymi, kombinuj dalej.

Po co generować certy self-signed, jak wystarczy domenę trzymać na jakimś kompatybilnym serwerze DNS i skrypty ACME-SH wygenerują certy wildcard Lets'Encrypt albo ZeroSSL, honorowane przez przeglądarki?

Sznurki:
https://github.com/acmesh-official/acme.sh
https://github.com/acmesh-official/acme.sh/wiki
https://github.com/acmesh-official/acme.sh/wiki/dnsapi

Ostatnio edytowany przez Jacekalex (2024-02-02 20:25:13)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)