Apache'i konfigureerimine SSL-iga
Järgmistes juhistes eeldatakse, et soovite käivitada mõlemad turvalised serverid (pordis 443) ja tavaline server (sadamas 80). Esiteks peate konfigureerima serveri mõlemas pordis kuulamiseks. Mõlemad muudatused /etc/apache2/ports.conf (Debianis; see sisaldub ka versioonis apache2.conf) või redigeeri /etc/apache2/apache2.conf otse, et lisada read:
Kuula 80 Kuula 443
Edasi muutke /etc/apache2/sites-enabled/yoursite SSL-i seadete kasutamiseks. Tavaliste ja turvaliste serverisätete eraldamine VirtualHosts'i abil on hooldatavuse osas kõige lihtsam variant. Igasugune konfiguratsioon väljaspool jaotisi VirtualHosts (näiteks ServerAdmini seadistamine) kehtib nii (kui ka kõigi teiste) VirtualHostide kohta.
Apache 2.4.8 ja uuemate versioonide versioonid eeldavad, et teie serverisertifikaat liidetakse kõigi vahesertifikaatidega ühes failis. Aheldatud faili allalaadimiseks SSL.com-st valige Nginx laadige link oma portaalikontole alla:
Teise võimalusena saate olemasoleva sertifikaadi ja vahefailid siduda järgmise käsuga:
$ cat /etc/ssl/private/ca-bundle-client.crt >> /etc/ssl/private/yourdomain.crt
Lisage järgmine osa oma konfiguratsioonifailile:
# =================================================== # SSL /TLS seaded # ================================================== = NameVirtualHost *: 443 DocumentRoot "/ var / www / yoursite" SSLEngine on SSLCertificateFile /etc/ssl/private/yourdomain.chained.crt SSLCertificateKeyFile /etc/ssl/private/myserver.key
Mõned märkused selle konfiguratsiooni kohta:
SSLEnginepeab olema lubatud, et server kasutaks SSL-i.DocumentRootseab selle virtuaalse masina juurkataloogi. See tähendab, et saate turvalise sisu tavalisest sisust täielikult eraldada.SSLCertificateFiletuleks seada kohta, kuhu serveri sertifikaadi ja vaheahelaga fail panna.SSLCertificateKeyFiletuleks seada asukohta, kuhu isikliku võtme faili paned.
Lisage järgmine osa oma konfiguratsioonifailile:
# =================================================== # SSL /TLS seaded # ================================================== = NameVirtualHost *: 443 DocumentRoot "/ var / www / yoursite" SSLEngine on SSLCertificateFile /etc/ssl/private/yourdomain.crt SSLCertificateKeyFile /etc/ssl/private/myserver.key SSLCertificateChainFile / etc / sslle / private / ca klient.crt
Mõned märkused selle konfiguratsiooni kohta:
SSLEnginepeab olema lubatud, et server kasutaks SSL-i.DocumentRootseab selle virtuaalse masina juurkataloogi. See tähendab, et saate turvalise sisu tavalisest sisust täielikult eraldada.SSLCertificateFile, SSLCertificateChainFile,jaSSLCertificateKeyFiletuleks seada kohtadesse, kuhu paned vastavalt sertifikaadi, vahe- ja privaatvõtme failid.
Tavalise serveri käitamiseks pordil 80 lisage konfiguratsioonifaili järgmine jaotis:
NameVirtualHost *: 80 DocumentRoot "/ var / www / yoursite" # Hostipõhise kataloogi seadistamine, suvandid jne # Enamik neist suvanditest on tõenäoliselt seatud väljaspool jaotisi VirtualHosts #.
Pärast redigeeritud konfiguratsioonifaili salvestamist taaskäivitage veebiserver. Kui kasutasite sertifikaadi loomisel parooli, peate selle vaidlustamisel sisestama.
Testimine
Kui teil pole veel sisu, looge index.html põhileht kõikjal, kus asub teie veebiserveri juurkataloog.
Seejärel suunake oma veebibrauser aadressile https://www.yoursite.com. Peaksite nägema, et SSL-ühendus on avatud ja leht toimetatud. Kui kasutate ise allkirjastatud sertifikaati, kuvab teie brauser hoiatuse, et serveri identiteeti ei saa kontrollida. Võite valida sertifikaadi vaatamise ja aktsepteerimise. Välise sertifikaadi kasutamisel peaks see kõik toimuma ilma sekkumiseta.
Veenduge ka, et te ei pääseks kaitstud sisule juurde, kasutades http: //. Kui proovite, peaksite saama veateate.
Probleemid
Kui see ei tööta ootuspäraselt, kontrollige kõigepealt, kas teie server töötab ps -a | grep apache. Kui see ei anna midagi, proovige see uuesti käivitada ja kontrollige terminali tõrketeateid.
Samuti kontrollige, kas teie võtme- ja sertifikaadifailide õigused on õigesti seadistatud (vt ülalpool), samuti testi HTML-faili ja selle emakataloogi õigused.
Järgmisena kontrollige logisid. Peaksite kontrollima nii põhiserveri logisid kui ka SSL-logisid, mille seadistasite ülaltoodud konfiguratsioonifailis. Kui te midagi kasulikku ei saa, proovige muuta Apache2 konfiguratsioonifailis LogLevel väärtus „silumiseks”, taaskäivitage Apache2 ja testige uuesti. See peaks andma rohkem logifailide andmeid.
Kui käitate tavalist veebiserverit ka 80. pordis, proovige testleht tuua pigem http: // kui https: // kaudu, et tuvastada, kas probleem on veebiserveris või SSL-ühenduses. Pange tähele, et ülaltoodud seadistustes on veebiserveri juurkataloog http: // ja https: // jaoks erinev, nii et te ei pääse (või ei tohiks!) Samale sisule juurde pääseda. Kui teie testleht juurkataloogis http: // töötab siiski hästi ja testleht juurkataloogis https: // ei toimi, aitab see teil probleemi täpsustada.
Kui probleemiks on SSL-ühendus, on see kasulik tööriist s_client, mis on tõrkeotsingu diagnostikavahend TLS/ SSL-ühendused. Põhikasutus on: /usr/bin/openssl s_client -connect localhost:443. Samuti on arvukalt muid võimalusi, mille kohta saate kontrollida dokumentatsiooni. Kui saate tõrketeateid, peaks see teid probleemi leidmisel aitama.
