현재 80포트는 가짜 폴더를 지정하여 ip로 접속시 404가 뜨게 해 놓았습니다. 

도메인으로 접속할때는 루트로 가게 하고 도메인이 아닌경우는 그 보다 위에 지정한 가상호스트로 가짜폴더로 이동시키는건데요.

 

 

 

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /home/없는경로
</VirtualHost>

<VirtualHost *:80>
        # The ServerName directive sets the request scheme, hostname and port that
        # the server uses to identify itself. This is used when creating
        # redirection URLs. In the context of virtual hosts, the ServerName
        # specifies what hostname must appear in the request's Host: header to
        # match this virtual host. For the default virtual host (this file) this
        # value is not decisive as it is used as a last resort host regardless.
        # However, you must set it for any further virtual host explicitly.
        ServerName 도메인지정

        ServerAdmin webmaster@localhost
        DocumentRoot /home/사이트실제 루트경로

        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.
        # It is also possible to configure the loglevel for particular
        # modules, e.g.
        #LogLevel info ssl:warn

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        # For most configuration files from conf-available/, which are
        # enabled or disabled at a global level, it is possible to
        # include a line for only one particular virtual host. For example the
        # following line enables the CGI configuration for this host only
        # after it has been globally disabled with "a2disconf".
        #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

 

 

 

 

그런데  default-ssl.conf 를 위와 같은 방식으로 해주면 사이트가 접속이 안되네요.

 

현재 위 파일의 내용은 이렇게 되어 있습니다.

 

<VirtualHost 서버아이피:443>    // 서버아이피를 * 로 변경해봐도 안되네요.
        DocumentRoot /home/사이트 실제 루트경로
        ServerName 도메인
        Protocols h2 http/1.1
        SSLEngine on
        SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
        SSLCertificateFile        /etc/apache2/ssl/.com.crt
        SSLCertificateKeyFile     /etc/apache2/ssl/.com.key
        SSLCertificateChainFile  /etc/apache2/ssl/_ChainBundle.crt
        SSLCACertificateFile     /etc/apache2/ssl/ADDTRUST_EXTERNAL_CA_ROOT.crt

SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-R  SA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE  -DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SH  A256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-E  CDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SH  A256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES2  56-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:AES128  -GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:  AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-  DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
SSLHonorCipherOrder on

Header always set Strict-Transport-Security "max-age=15768000"

SSLUseStapling on
SSLStaplingResponderTimeout 5
SSLStaplingReturnResponderErrors off

</VirtualHost>
SSLStaplingCache shmcb:/var/run/ocsp(128000)
</IfModule>

 

 

https도 아이피로 접속하면 404를 띄우던지 하고 싶은데요. http랑 많이 다른거 같네요..  

 

  • profile
    오랫만에 꿀팁 감사합니다~~~
  • profile profile
    죄송하지만 팁이 아니고 질문입니다.
  • profile profile
    헐 잘못봤네요;;;;웹지기님 글은 무조건 팁같다는;;;;;
  • profile
    443 포트는 한서버에서 ip 1개로 매칭해서 사용할 수 밖에 없는 것에서 출발하는 문제인 듯 한데 이걸 우회해서 ip접속을 막을 방법이 다른 무언가 있을텐데 검색을 해봐도 쉽게 찾아지지 않네요.
  • profile
    아파치는 도메인 매칭이 실패하면 무조건 첫번째 가상호스트로 접속될겁니다.
    저는 00-default.conf 같은 이름으로 해서 무조건 첫번째로 읽히도록 하고, 첫번째는 그냥 오류 페이지를 표시하도록 했습니다. (443포트도 ServerName으로 여러 도메인 운영이 가능합니다.)
  • profile profile
    default-ssl.conf
    이 이미 위와 같이 작성되어 있는 상황에서 https://아이피접속 시 오류페이지가 발생하도록 좀 사세한 설명 부탁드려도 될까요?
  • profile profile
    00-default-ssl.conf 파일을 하나더 만들어서

    <VirtualHost 서버아이피:443>
    DocumentRoot /home/임의의경로
    ServerName 도메인
    </VirtualHost>

    이렇게 저장하고

    >a2ensite 00-default-ssl

    이렇게 해주면 될까요?? 실제 ssl 설정을 하는게 아니고 그냥 에러페이지를 띄우기 위한 목적인데요....
  • profile profile

    VirtualHost를 하나 더 만드신다면 SSL 관련 설정도 모두 복사해서 넣으셔야 합니다. 인증서 없이는 443번 포트를 정상적으로 사용할 수 없습니다.

  • profile

    SSL은 인증서 자체에 도메인 정보가 들어 있기 때문에 숨기기가 쉽지 않습니다.

     

    모든 내용을 다 복사해서 ServerName과 DocumentRoot만 바꾸면 되긴 하지만, 여전히 인증서를 통해 도메인 정보가 새어나가지요. 도메인 정보가 포함되어 있지 않은 인증서를 임의로 만들어서 붙인다면 SNI를 지원하지 않는 구버전 브라우저 (IE8 이하) 사용자들이 불편을 겪게 되고요.

     

  • profile profile
    쉽지 않네요. 브라우저별로 접속이 안되는 건 적용하면 득보다 실이 많죠.