카테고리 없음

보안인증서 구입 후 내 서버에 적용하기

rinny_spring 2022. 3. 8. 14:08
반응형

카페24 보안인증서 종류

1. 보안인증서 구입

보안인증서를 구입합니다. (ex. 카페24, 코모도ssl 등) 메인 도메인과 www.도메인은 보통 하나로 묶어서 취급하고 있습니다. 저는 카페24에서 구입했고, 카페24 기준으로 작성하였습니다.

저는 서버도 카페24에서 임대해서 사용하고 있습니다. 이미 확정도메인까지 연결하고 있고, 보안인증서 연결(HTTPS)만 하면 되기 때문에 1개의 도메인만 연결, positive 라이트를 구매하였습니다. 구매 시 입력한 비밀번호를 반드시 따로 적어두시기 바랍니다.

만약 서브 도메인을 사용중이라면 positive 라이트로 각각 구입하여 적용해야합니다. 서브 도메인이 많으면 ssl 와일드카드가 낫습니다. 참고로 positive 멀티도메인은 구매후 3개 이후의 도메인부터는 개당 38,500원씩을 추가로 결제해야한다고 합니다.

인증도 각각, 설정도 각각해야합니다.

 

2. 보안인증서 도메인 소유주 인증

보안인증서 구매 후 소유주 인증을 해야합니다. 구매 시 입력한 도메인의 소유주 정보에 따라 이메일이 오는데, 간혹 스팸메일함으로 들어가는 경우가 있으니 주의하여 확인해봐야합니다. 이메일은 sectigo 회사의 업무시간에 따라 달라질 수 있지만 보통은 1~2일정도 소요됩니다. 우리나라 시간 기준으로 오전에 신청하면 오후에는 오는것을 확인했습니다.

하지만, 정말 급하게 신청하여 적용해야하는 경우 HTTP 인증으로도 할 수 있습니다. 저는 HTTP 인증으로 인증하여 적용하고있습니다. HTTP 인증으로 변경하는 방법은 카페24 호스팅센터 로그인 후 메인에서 '나의서비스관리 > 인증서관리' 페이지에서 인증 방법을 변경하여 신청하시면 됩니다.

신규 신청하여 20분 후에 인증 파일을 다운로드 받아 해당 도메인이 연결되고 있는 홈페이지 FTP에 연결하여 /.well-known/pki-validation 폴더를 생성하여 해당 폴더에 다운로드 받은 인증 파일을 업로드하면 카페24에서 확인 후 인증이 완료됩니다.

 

3. 보안인증서 설정

인증이 완료되면 인증서 파일들을 다운로드 받을 수 있습니다. 개인키, 인증서, 중개자인증서, 체인인증서를 모두 다운로드 합니다.

저는 root 계정으로 서버를 관리하고 있기 때문에, 아파치 폴더 내 ssl 폴더를 생성하여 이 폴더(/opt/apache/ssl)에 인증서 파일들을 업로드하였습니다. 관리하고 있는 홈페이지가 많을 경우 ssl 폴더 내 홈페이지 식별 폴더를 생성하여 이 폴더 안에 넣어줍니다.

아파치 보안인증서 설정을 해줍시다. 저는 아파치 httpd.conf 설정에서 ssl 설정은 /conf/extra/httpd-ssl.conf 파일로 개별 설정을 해주었기때문에 httpd-ssl.conf 파일에서 각 홈페이지의 보안인증서 설정을 해주고 있습니다.

httpd-ssl.conf 에서 홈페이지 보안인증서 SSL 설정을 해줍니다.

<VirtualHost *:443>
 
        DocumentRoot "홈페이지 폴더 경로"
        ServerName 도메인
        ServerAlias 도메인 www.도메인
        SSLEngine on
 
        SSLCertificateFile "/opt/apache/ssl/ssl.crt"
        SSLCertificateKeyFile "/opt/apache/ssl/ssl.key"
        SSLCertificateChainFile "/opt/apache/ssl/chain_all_ssl.crt"
        SSLCACertificateFile "/opt/apache/ssl/chain_ssl.crt"
 
        Header always set Strict-Transport-Security "max-age=15552000"
        ErrorLog "logs/error_log"
        CustomLog "logs/access_log" common
 
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
            SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory "/opt/apache/cgi-bin">
            SSLOptions +StdEnvVars
        </Directory>
 
</VirtualHost>

빨간 글씨 부분이 보안인증서 설정 부분입니다. 인증서 위치와 파일명을 확인하여 설정했는지 확인해야합니다.

이렇게 한 후 아파치 웹서버를 재부팅해줍니다. 

네, 설정이 안됩니다. 이유는 인증서 파일에 패스워드가 적혀있기 때문입니다. 매번 아파치 재기동 시 입력해도 되겠지만.. 관리 측면에서 귀찮아집니다. 패스워드를 입력하지 않도록 설정해보겠습니다.

 

4. 보안인증서 비밀번호 묻지 않도록 설정하기

인증서 파일을 업로드 해놓은 폴더까지 SSH를 통해 접속하여 이동해줍니다.

우선, 기존 인증서 파일을 ssl_pass.key로 복사해두겠습니다.

cp ssl.key ssl_pass.key

그 다음, ssl.key에서 비밀번호를 해제하도록 하겠습니다. 해당 명령어 입력 후 인증서 구입시 입력한 비밀번호를 입력하시면 완료됩니다.

openssl rsa -in ssl_pass.key -out ssl.key

네, 이렇게 하면 ssl.key 인증서 파일에서 비밀번호가 해제된 파일로 변경됩니다.

파일이 변경되었습니다. 다시 아파치 웹서버를 재기동하면 적용이 완료됩니다. 적용 확인은 https:// 도메인으로 접속, 브라우저의 url 입력란 옆에 자물쇠로 아이콘이 나오는데 이곳을 통해 확인할 수 있습니다.

반응형