SSL23_GET_SERVER_HELLO : HTTPS URL에 액세스하려고 할 때 알 수없는 프로토콜

자 붐바

WORDPRESS 웹 사이트를 위한 스테이징 환경을 생성하는 동안 HTTPS 구성을 설정할 수 없습니다.

워드 프레스 폴더를 복사하고 Mysql 데이터베이스를 백업했고 내 웹 사이트의 복사본을 가질 수 있었지만 링크를 클릭 할 때마다 HTTPS URL로 이동하고 SSL connection error.

환경

  • Vagrant VM Ubuntu 서버 Precise64
  • 내 호스트를 구성하는 Chef
  • SSL 모드가있는 Apache2
  • 워드 프레스

UNAME

uname -a
Linux test-www 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

SSL 구성

vagrant@test-www:/etc/apache2$ more ssl.conf 
<VirtualHost 192.168.33.10:443>
    DocumentRoot /var/www
    ServerName test-www.domain.com
    ErrorLog /var/log/apache2/error_secure.log
        LogLevel info

    SSLEngine on

    SSLCertificateFile /etc/ssl/wildcard.domain.com/certificate.crt
    SSLCertificateKeyFile /etc/ssl/wildcard.domain.com/server.key
    SSLCACertificateFile /etc/ssl/wildcard.domain.com/test-www.domain.com.ca.crt
</VirtualHost> 

OPENSSL

vagrant@test-www:/etc/apache2$ openssl s_client -connect 192.168.33.10:443
CONNECTED(00000003)
139816269579936:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:757:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 213 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---

WGET HTTP : 443

vagrant@test-www:/etc/apache2$ wget http://192.168.33.10:443
--2015-02-02 17:24:31--  http://192.168.33.10:443/
Connecting to 192.168.33.10:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-02-02 17:24:31 ERROR 404: Not Found.

WGET HTTPS

vagrant@test-www:/etc/apache2$ wget https://192.168.33.10
--2015-02-02 17:25:23--  https://192.168.33.10/
Connecting to 192.168.33.10:443... connected.
OpenSSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
Unable to establish SSL connection.
vagrant@test-www:/etc/apache2$ 

APACHE2.CONF

#
# Generated by Chef
#
# Based on the Ubuntu apache2.conf

ServerRoot "/etc/apache2"

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
LockFile /var/lock/apache2/accept.lock

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
#
PidFile /var/run/apache2.pid

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5

##
## Server-Pool Size Regulation (MPM specific)
##

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
    StartServers          1
    MinSpareServers       1
    MaxSpareServers       2
    ServerLimit           5
    MaxClients            3
    MaxRequestsPerChild   0
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
    StartServers          1
    ServerLimit           3
    MaxClients            3
    MinSpareThreads       10
    MaxSpareThreads       20
    ThreadsPerChild       64
    MaxRequestsPerChild   0
</IfModule>

User www-data
Group www-data

#
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#

AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>

#
# DefaultType is the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value.  If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
DefaultType text/plain


#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog /var/log/apache2/error.log

#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn

# COOK-1021: Dummy LoadModule directive to aid module installations
#LoadModule dummy_module modules/mod_dummy.so

# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf


# Include ports listing
Include /etc/apache2/ports.conf

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
#

# Customizable error responses come in three flavors:
# 1) plain text 2) local redirects 3) external redirects
#
# Some examples:
#ErrorDocument 500 "The server made a boo boo."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.example.com/subscription_info.html
#

#
# Putting this all together, we can internationalize error responses.
#
# We use Alias to redirect any /error/HTTP_<error>.html.var response to
# our collection of by-error message multi-language collections.  We use
# includes to substitute the appropriate text.
#
# You can modify the messages' appearance without changing any of the
# default HTTP_<error>.html.var files by adding the line:
#
#   Alias /error/include/ "/your/include/path/"
#
# which allows you to create your own set of files by starting with the
# /usr/share/apache2/error/include/ files and copying them to /your/include/path/,
# even on a per-VirtualHost basis.  The default include files will display
# your Apache version number and your ServerAdmin email address regardless
# of the setting of ServerSignature.
#
# The internationalized error documents require mod_alias, mod_include
# and mod_negotiation.  To activate them, uncomment the following 30 lines.

#    Alias /error/ "/usr/share/apache2/error/"
#
#    <Directory "/usr/share/apache2/error">
#        AllowOverride None
#        Options IncludesNoExec
#        AddOutputFilter Includes html
#        AddHandler type-map var
#        Order allow,deny
#        Allow from all
#        LanguagePriority en cs de es fr it nl sv pt-br ro
#        ForceLanguagePriority Prefer Fallback
#    </Directory>
#
#    ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
#    ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
#    ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
#    ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
#    ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
#    ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
#    ErrorDocument 410 /error/HTTP_GONE.html.var
#    ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
#    ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
#    ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
#    ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
#    ErrorDocument 415 /error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var
#    ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
#    ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
#    ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
#    ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
#    ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var



# Include generic snippets of statements
Include /etc/apache2/conf.d/*.conf

# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/

PORTS.CONF

$ more ports.conf 
# This file was generated by Chef for my-vm-precise64.
# Do NOT modify this file by hand!

Listen *:80
NameVirtualHost *:80

그런 다음 이것들을 ports.conf

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.
    Listen 443
</IfModule>

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

mods ssl.conf

vagrant@test-www:/etc/apache2$ grep "SSLv" -r *

mods-available/ssl.conf:#SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
mods-available/ssl.conf:# enable only secure protocols: SSLv3 and TLSv1, but not SSLv2
mods-available/ssl.conf:SSLProtocol all -SSLv2   <=== ?
mods-enabled/ssl.conf:#SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
mods-enabled/ssl.conf:# enable only secure protocols: SSLv3 and TLSv1, but not SSLv2
mods-enabled/ssl.conf:SSLProtocol all -SSLv2    <=== ?
자 붐바

내 나쁜, 내가 가지고 ssl.conf/etc/apache2대신/etc/apache2/sites-enabled

파일을 이동하고 apache2를 다시 시작 service apache2 restart하면 모두 정상적으로 작동했습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

SMTPS : OpenSSL-SSL 루틴 : SSL23_GET_SERVER_HELLO : 알 수없는 프로토콜 s23_clnt.c : 787 :

분류에서Dev

Adobe Connect에 로그인 할 때 알 수없는 SSL 프로토콜

분류에서Dev

"SSL23_GET_SERVER_HELLO : 알 수없는 프로토콜"서버 업그레이드 후

분류에서Dev

IOError : [Errno 소켓 오류] [Errno 1] _ssl.c : 507 : error : 140770FC : SSL 루틴 : SSL23_GET_SERVER_HELLO : 알 수없는 프로토콜

분류에서Dev

내 WEB-INF 디렉토리에서 .jsp 파일에 액세스하려고 할 때 404 오류가 발생하고 이유를 알 수 없습니다.

분류에서Dev

for 루프 내에서 변수에 액세스하려고 할 때 오류 발생

분류에서Dev

내 프로젝트의 index.php에 액세스하려고 할 때 404를 찾을 수 없습니다.

분류에서Dev

Adal4j의 새로 고침 토큰에서 액세스 토큰에 액세스하려고 할 때 AuthenticationCallback을 어떻게 정의 할 수 있습니까?

분류에서Dev

htaccess에서 https 프로토콜을 사용할 때 www 제거

분류에서Dev

XAMPP-https 포트에 액세스하려고 할 때 "잘못된 요청"

분류에서Dev

angularjs로 REST 서비스에 액세스하려고 할 때 404

분류에서Dev

DJANGO-FileNotFoundError : [Errno 2] 해당 파일 또는 디렉토리 없음 : ''파일에 액세스하려고 할 때

분류에서Dev

파일 공유에 액세스하려고 할 때 "네트워크 경로를 찾을 수 없습니다"

분류에서Dev

로그인 할 때 페이지에 대한 액세스를 허용하려고 할 때 세션 ID를 전송할 수 없음

분류에서Dev

Python 하위 프로세스는 다른 프로세스에서 사용하고 있기 때문에 .bat 파일에 액세스 할 수 없습니다.

분류에서Dev

\\ fqdn에 액세스하려고 할 때“53 네트워크 경로를 찾을 수 없습니다.”,하지만 \\ IP는 정상적으로 작동합니다.

분류에서Dev

액세스 토큰으로 Spotify 웹 API에 액세스하려고 할 때 401 받기

분류에서Dev

멤버 함수를 사용하여 동적으로 할당 된 멤버 변수에 액세스하려고 할 때 읽기 액세스 위반

분류에서Dev

링크는 http : //이어야 할 때 https : // 프로토콜을 생성합니다.

분류에서Dev

Devise JWT로 보안 된 API에 액세스하려고 할 때 "사용 가능한 확인 키 없음"

분류에서Dev

툴바의 레이아웃에서 TextView에 액세스하려고 할 때 null로 바뀌는 이유

분류에서Dev

메시지 크기를 알려주는 헤더가없는 TCP 프로토콜에 boost :: asio를 어떻게 사용할 수 있습니까?

분류에서Dev

제한된 프로토콜로 캐스트는 기본 방법에 액세스 할 수 없습니다.

분류에서Dev

java.net.MalformedURLException : 프로토콜 없음 : 스파크 제출 작업에 인수를 전달할 때 null

분류에서Dev

Google 스프레드 시트에 액세스하려고 할 때 Node.js

분류에서Dev

이미지 URL에 액세스하려고 할 때 403 오류

분류에서Dev

프레임 워크에있는 모델 클래스를 초기화하려고 할 때 "잘못된 속성 프로토콜 선언"

분류에서Dev

해당 속성 없음 : 구성에 액세스하려고 할 때 getFlatConfig

분류에서Dev

AngularJS $ scope 변수에 액세스하려고 할 때 정의되지 않음

Related 관련 기사

  1. 1

    SMTPS : OpenSSL-SSL 루틴 : SSL23_GET_SERVER_HELLO : 알 수없는 프로토콜 s23_clnt.c : 787 :

  2. 2

    Adobe Connect에 로그인 할 때 알 수없는 SSL 프로토콜

  3. 3

    "SSL23_GET_SERVER_HELLO : 알 수없는 프로토콜"서버 업그레이드 후

  4. 4

    IOError : [Errno 소켓 오류] [Errno 1] _ssl.c : 507 : error : 140770FC : SSL 루틴 : SSL23_GET_SERVER_HELLO : 알 수없는 프로토콜

  5. 5

    내 WEB-INF 디렉토리에서 .jsp 파일에 액세스하려고 할 때 404 오류가 발생하고 이유를 알 수 없습니다.

  6. 6

    for 루프 내에서 변수에 액세스하려고 할 때 오류 발생

  7. 7

    내 프로젝트의 index.php에 액세스하려고 할 때 404를 찾을 수 없습니다.

  8. 8

    Adal4j의 새로 고침 토큰에서 액세스 토큰에 액세스하려고 할 때 AuthenticationCallback을 어떻게 정의 할 수 있습니까?

  9. 9

    htaccess에서 https 프로토콜을 사용할 때 www 제거

  10. 10

    XAMPP-https 포트에 액세스하려고 할 때 "잘못된 요청"

  11. 11

    angularjs로 REST 서비스에 액세스하려고 할 때 404

  12. 12

    DJANGO-FileNotFoundError : [Errno 2] 해당 파일 또는 디렉토리 없음 : ''파일에 액세스하려고 할 때

  13. 13

    파일 공유에 액세스하려고 할 때 "네트워크 경로를 찾을 수 없습니다"

  14. 14

    로그인 할 때 페이지에 대한 액세스를 허용하려고 할 때 세션 ID를 전송할 수 없음

  15. 15

    Python 하위 프로세스는 다른 프로세스에서 사용하고 있기 때문에 .bat 파일에 액세스 할 수 없습니다.

  16. 16

    \\ fqdn에 액세스하려고 할 때“53 네트워크 경로를 찾을 수 없습니다.”,하지만 \\ IP는 정상적으로 작동합니다.

  17. 17

    액세스 토큰으로 Spotify 웹 API에 액세스하려고 할 때 401 받기

  18. 18

    멤버 함수를 사용하여 동적으로 할당 된 멤버 변수에 액세스하려고 할 때 읽기 액세스 위반

  19. 19

    링크는 http : //이어야 할 때 https : // 프로토콜을 생성합니다.

  20. 20

    Devise JWT로 보안 된 API에 액세스하려고 할 때 "사용 가능한 확인 키 없음"

  21. 21

    툴바의 레이아웃에서 TextView에 액세스하려고 할 때 null로 바뀌는 이유

  22. 22

    메시지 크기를 알려주는 헤더가없는 TCP 프로토콜에 boost :: asio를 어떻게 사용할 수 있습니까?

  23. 23

    제한된 프로토콜로 캐스트는 기본 방법에 액세스 할 수 없습니다.

  24. 24

    java.net.MalformedURLException : 프로토콜 없음 : 스파크 제출 작업에 인수를 전달할 때 null

  25. 25

    Google 스프레드 시트에 액세스하려고 할 때 Node.js

  26. 26

    이미지 URL에 액세스하려고 할 때 403 오류

  27. 27

    프레임 워크에있는 모델 클래스를 초기화하려고 할 때 "잘못된 속성 프로토콜 선언"

  28. 28

    해당 속성 없음 : 구성에 액세스하려고 할 때 getFlatConfig

  29. 29

    AngularJS $ scope 변수에 액세스하려고 할 때 정의되지 않음

뜨겁다태그

보관