it-swarm.com.de

Ubuntu / Apache2: Ich kann Port 443 nicht öffnen

Ich versuche, ein SSL-Zertifikat auf meinem Ubuntu 14-Server zu installieren (mit Apache 2). Aus irgendeinem Grund scheint der Port 443 geschlossen zu sein

Ich habe ssl installiert und aktiviert

/etc/Apache2/ports.conf lautet wie folgt:

Listen 80

#<IfModule ssl_module>
#       Listen 443
#</IfModule>

<IfModule mod_ssl.c>
    Listen 443
    NameVirtualHost 11.11.11.11:443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

HÖR MAL ZU

[email protected]:/home/admin# netstat -ntlp | grep LISTEN
tcp        0      0 127.0.0.1:10024         0.0.0.0:*               LISTEN      1317/amavisd-new (m
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1184/mysqld     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1116/sshd       
tcp6       0      0 :::80                   :::*                    LISTEN      2037/Apache2    
tcp6       0      0 :::22                   :::*                    LISTEN      1116/sshd       
tcp6       0      0 :::443                  :::*                    LISTEN      2037/Apache2 

UFW

[email protected]:/home/admin# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22                         ALLOW IN    Anywhere
22/tcp                     ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
21/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
22 (v6)                    ALLOW IN    Anywhere (v6)
22/tcp (v6)                ALLOW IN    Anywhere (v6)
80/tcp (v6)                ALLOW IN    Anywhere (v6)
21/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)

Vermisse ich etwas? Jede Hilfe wäre sehr dankbar.

EDIT hier meine exemple.net-ssl.conf

<VirtualHost *:443>

        ServerName exemple.net
        ServerAlias www.exemple.net
        DocumentRoot /var/www/exemple.net/
        CustomLog /var/log/Apache2/secure_access.log combined

        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/exemple.net.crt
        SSLCertificateKeyFile /etc/ssl/private/exemple.net.key
        SSLCertificateChainFile /etc/ssl/certs/GandiXXXSSLCA.pem
        # SSLVerifyClient None

  </VirtualHost>
1
Raphael_b

Entfernen Sie die IP-Adresse von NameVirtualHost 92.243.16.14:443 (Sie haben praktisch alle VirtualHosts an diese IP-Adresse gebunden), um Port 443 auf allen Netzwerkschnittstellen (IPs) abzuhören:

NameVirtualHost *: 443

Dann können Sie die Domain unterscheiden, indem Sie den VirtualHost an eine bestimmte IP-Adresse binden, z. B .: VirtualHost 1.2.3.4:443 VirtualHost 1.2.3.5:443 und so weiter ...

Um mit den Anweisungen VirtualHost und ServerName beliebig viele SSL-Vhosts auf Ihrem Server zu erstellen, um die Domänen zu unterscheiden, können Sie die folgenden Schritte für detailliertere Konfigurationen verwenden http: //www.bytelinux .com/Selbst signierte Zertifikate erstellen-enable-Apache-ssl-ubuntu-14-10/

Ich sage nicht, dass es falsch ist, eine Schnittstelle zu binden, aber wenn sich diese IP-Adresse ändert, können Sie nicht mehr auf Ihre Domain zugreifen und Sie können nicht lokal auf SSL zugreifen (127.0.0.1).

1
Matei Cezar

Lösung von MadHatter,

https://serverfault.com/questions/666696/ubuntu-Apache2-cannot-open-port-443/666713?noredirect=1#comment814308_66671

ich weiß nicht viel über ufw, aber in diesem Fall wird es meiner Meinung nach für den INPUT-Verkehr völlig ineffektiv sein, da die Regeln, die es implementieren, nach einem Blanket-DROP (der fünften Regel in der INPUT-Kette) stehen. An den Paketzählungen in den späteren Regeln in der INPUT-Kette können Sie erkennen, dass keine Pakete jemals so weit kommen wie die Regeln, die Datenverkehr an die UFW-Ketten senden sollen (von denen ich annehme, dass sie die UFW-Richtlinie implementieren sollen). .

Wenn Sie tun

iptables -I INPUT 5 -p tcp --dport 443 -j ACCEPT

das sollte Ihren HTTPS-Port öffnen. Ich überlasse es Ihnen, dies über Neustarts hinweg dauerhaft zu machen, da es von der Implementierung abhängt. "

1
Raphael_b

Apache wird ausgeführt und Port 443 ist ebenfalls geöffnet. Hier müssen Sie mithilfe des Befehls ifconfig überprüfen, ob die IP-Adresse 92.243.16.14 konfiguriert ist oder nicht. weil 443 auf der Standardschnittstelle ausgeführt wird.

0
PKumar