O CentOS 7 não servirá conteúdo https estático, por que não? [fechadas]

4

Acabei de instalar httpd e criei um arquivo index.html estático. Eu tenho firewalld configurado para permitir acesso à Internet ao serviço https . Mas quando eu digito https://my.server.ip em um navegador da web, o navegador dá um erro dizendo que não pode se conectar com o servidor. O que devo alterar para que o navegador receba o arquivo index.html ?

Aqui está a definição firewalld para a zona pública:

[[email protected]]# firewall-cmd --list-all
public (default, active)
  interfaces: enp3s0
  sources: 
  services: https ssh
  ports: 
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 

Aqui está o arquivo index.html junto com sua localização:

[[email protected]]# cd /var/www/html
[[email protected] html]# cat index.html
<html>
<body>
Understand that this is a test.  If this text appears in the browser, then https is working.
</body>
</html>

Aqui está a tag VirtualHost em httpd.conf :

<VirtualHost server.ip.address:443>
   DocumentRoot /var/www/html/
   SSLEngine on
   SSLProxyEngine on
   SSLCertificateFile /etc/pki/tls/certs/localhost.crt
   SSLCertificateChainFile /etc/pki/tls/certs/ca-bundle.crt
   SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
   # ProxyPass / http://localhost:8080/
   # ProxyPassReverse / http://localhost:8080/
</VirtualHost>  

Aqui está um link para o arquivo httpd.conf inteiro.

EDIT # 1

Estou obtendo resultados mistos quando olho para ver qual SSL está instalado no sistema. Por exemplo, nada está escutando em 443. Além disso, enquanto o systemctl não pode encontrar o openssl, o yum parece pensar que o opensl já está instalado. Mas eu confirmei que os arquivos .crt estão todos em seus locais pretendidos.

[root@1my-server-ip-addr ~]# netstat -na | grep 443.*LISTEN
[root@1my-server-ip-addr ~]# systemctl status openssl
openssl.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)

[root@1my-server-ip-addr ~]# yum install openssl
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.chkhosting.com
 * epel: mirror.nexcess.net
 * extras: ftpmirror.your.org
 * updates: centos.mbni.med.umich.edu
Package 1:openssl-1.0.1e-34.el7_0.6.x86_64 already installed and latest version
Nothing to do

EDIT # 2

Também verifiquei o status de mod_ssl e httpd da seguinte forma:

[root@1my-server-ip-addr certs]# systemctl status mod_ssl.service
mod_ssl.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)

[root@1my-server-ip-addr certs]# systemctl status httpd
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled)
   Active: active (running) since Thu 2014-12-11 18:44:31 EST; 1h 54min ago
 Main PID: 4094 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─4094 /usr/sbin/httpd -DFOREGROUND
           ├─4095 /usr/sbin/httpd -DFOREGROUND
           ├─4096 /usr/sbin/httpd -DFOREGROUND
           ├─4097 /usr/sbin/httpd -DFOREGROUND
           ├─4098 /usr/sbin/httpd -DFOREGROUND
           └─4099 /usr/sbin/httpd -DFOREGROUND

Dec 11 18:44:31 1my-server-ip-addr.static.servdns.com systemd[1]: Started The Apac...
Hint: Some lines were ellipsized, use -l to show in full.  

EDIT # 3

Eu também tentei o seguinte, conforme o conselho de prateek61:

[root@1my-server-ip-addr certs]# error_log
-bash: error_log: command not found
[root@1my-server-ip-addr certs]# access_log
-bash: access_log: command not found
[root@1my-server-ip-addr certs]# sestatus
SELinux status:                 disabled  

EDIT # 4

Eu encontrei o seguinte em access_log. Não sei como interpretá-lo porque muitas configurações foram alteradas hoje, e alguns desses logs podem ter sido gerados em diferentes configurações:

[Thu Dec 11 15:37:59.025223 2014] [mpm_prefork:notice] [pid 2627] AH00170:  caught SIGWINCH, shutting down gracefully
[Thu Dec 11 16:40:07.114619 2014] [mime:error] [pid 981] (2)No such file or directory: AH01597: could not open mime types config file /etc/httpd/conf/mime.types.
AH00016: Configuration Failed
[Thu Dec 11 16:43:30.051125 2014] [mime:error] [pid 1076] (2)No such file or directory: AH01597: could not open mime types config file /etc/httpd/conf/mime.types.
AH00016: Configuration Failed
[Thu Dec 11 18:44:31.845012 2014] [suexec:notice] [pid 4094] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Thu Dec 11 18:44:31.891627 2014] [auth_digest:notice] [pid 4094] AH01757: generating secret for digest authentication ...
[Thu Dec 11 18:44:31.893061 2014] [lbmethod_heartbeat:notice] [pid 4094] AH02282: No slotmem from mod_heartmonitor
[Thu Dec 11 18:44:31.898347 2014] [mpm_prefork:notice] [pid 4094] AH00163: Apache/2.4.6 (CentOS) configured -- resuming normal operations
[Thu Dec 11 18:44:31.898394 2014] [core:notice] [pid 4094] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'  

EDIT # 5

Eu corri yum remove mod_ssl httpd e, em seguida, yum install mod_ssl httpd . Em seguida, abri meu navegador da web e solicitei https server.ip.addr e obtive a mesma falha ao conectar a mensagem. No entanto, os seguintes logs foram criados:

access_log

::1 - - [11/Dec/2014:21:47:42 -0500] "OPTIONS * HTTP/1.0" 200 - "-"  "Apache/2.4.6 (CentOS) (internal dummy connection)"
::1 - - [11/Dec/2014:21:47:42 -0500] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.6 (CentOS) (internal dummy connection)"
::1 - - [11/Dec/2014:21:47:42 -0500] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.6 (CentOS) (internal dummy connection)"
::1 - - [11/Dec/2014:21:47:42 -0500] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.6 (CentOS) (internal dummy connection)"
::1 - - [11/Dec/2014:21:47:42 -0500] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.6 (CentOS) (internal dummy connection)"  

error_log

[Thu Dec 11 21:47:42.930487 2014] [mpm_prefork:notice] [pid 4094] AH00170: caught SIGWINCH, shutting down gracefully  

Não houve alterações em ssl_access_log , ssl_error_log ou ssl_request_log .

Eu não sei se alguns dos novos logs foram criados pelo ato de desinstalação e reinstalação.

Resposta parcial

Três etapas receberam httpd para veicular a página index.html quando solicitado por https my.server.ip :

1.) yum remove mod_ssl httpd  
2.) yum install mod_ssl httpd  
3.) systemctl restart httpd.service  

Mas um exame mais detalhado mostrou que a remoção da diretiva VirtualHost e a Listen 443 de httpd.conf desempenharam um papel na obtenção do conteúdo estático a ser exibido. Quando adicionei novamente a diretiva VirtualHost , um novo erro foi lançado.

Eu preciso da diretiva VirtualHost porque a meta final é exibir war arquivos de tomcat quando uma solicitação https de um determinado domínio vier de um navegador da Web.

Eu não tentei colocar Listen 443 de volta em httpd.conf porque uma diretiva Listen semelhante é fornecida em ssl.conf .

    
por CodeMed 12.12.2014 / 01:22

1 resposta

0

Você comentou o proxy escutando na porta 8080 em seu exemplo acima. Existe um proxy (reverso) configurado e ainda escutando no front end? Nesse caso, você deve ativar o ssl no servidor front-end e descomentar a escuta em 8080, conforme o exemplo acima.

Se ainda não houver um proxy de front-end escutando: Assegure-se de ter o ssl.conf configurado novamente à medida que você removia e reinstalava conforme sua descrição - o que também removeu os valores configurados anteriormente e o caminho para certs (que você criou como?).

reinicie o httpd e verifique a sintaxe com httpd -t . Se isso retornar a sintaxe, recomendo um ping para ver se está ocorrendo. Se for esse o caso, pls. compartilhe seu ssl.conf

    
por 16.04.2015 / 11:59