StartSSL에서 인증서 발급 받는 방법은 해당 글에서 확인하시기 바랍니다.


- 본 글은 RedHat 계열 기준으로 작성되었습니다. Debian, Ubuntu는 내용이 다릅니다.

- 본 글은 CentOS 7 기준으로 작성되었으며, 아파치는 yum 기반 설치를 가정합니다.



1. 아파치 SSL 모듈 설치


yum -y install mod_ssl



2. 서버에 인증서 저장


mkdir /etc/httpd/conf/ssl


# /etc/httpd/conf/ssl 경로에 아래의 인증서 파일들을 저장합니다.

# 경로는 바뀌어도 상관 없습니다. 아래 4번 항목에서 해당 경로를 수정해 주면 됩니다.


# 넣어야 하는 인증서 관련 파일:

#     acu.pe.kr.crt (도메인 인증서) (StartSSL에서 제공하는 zip 파일에 동봉)

#     private.key (비밀키)


# 인증서 파일들에 대한 권한 설정

chown -R root.root /etc/httpd/conf/ssl

chmod -R 644 /etc/httpd/conf/ssl



3. 아파치 설정 파일(httpd.conf)에 SSL 모듈 로드, 옵션 파일 추가


vi /etc/httpd/conf/httpd.conf


# 아래 내용 추가 (빨간 부분을 서버에 맞게 수정)

LoadModule ssl_module modules/mod_ssl.so

Listen 443

<VirtualHost *:443>

    ServerName acu.pe.kr

    ServerAlias www.acu.pe.kr

    DocumentRoot /var/www/html

    SSLEngine on

    SSLCertificateFile /etc/httpd/conf/ssl/acu.pe.kr.crt

    SSLCertificateKeyFile /etc/httpd/conf/ssl/private.key

</VirtualHost>



4. 아파치 재시작


systemctl restart httpd


# 아파치 실행 시 비밀키(private.key)의 pass phrase를 물어봅니다.

# 비밀키를 생성할 때 입력했던 비밀번호를 입력하시면 됩니다.


# 아파치를 실행할 때마다 pass pharase를 입력하기가 귀찮으시면

# 인증서에 아예 비밀번호를 입력시킬 수 있습니다.

openssl rsa -in /etc/httpd/conf/ssl/private.key -out /etc/httpd/conf/ssl/private.key


# 단, 이렇게 되면 이제부터 개인키 파일이 외부로 노출되어서는 절대 안됩니다.

# 또한 작업하기 전의 원본 파일을 별도로 백업해 두시기 바랍니다. (갱신 시 필요)



5. SSL 적용 테스트


테스트 사이트: https://www.digicert.com/help/



*. 에러 발생 시


이런 메시지가 출력되면 실행에 실패한 것임:

Job for httpd.service failed because the control process exited with error code.


왜 실행이 실패했는 지 로그 확인:

systemctl status -l httpd


문제: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:443

이유: 다른 프로세스가 443 포트를 이미 사용중이므로, 해당 프로세스를 종료해야 함

해결: netstat -tunap | grep 443 명령어로 어떤 프로세스가 사용중인지 확인 후 종료

해결: 해결이 안되면 아파치 설정에 Listen 443이 중복 선언된 것, 따라서 주석 처리


문제: 홈페이지 접속 시 신뢰할 수 없는 인증서 메시지가 출력됨

증상: 서버의 인증서(crt)와 브라우저에 나타난 인증서의 지문(fingerprint)이 같지 않음

증상: Common Name(CA)에 이상한 랜덤 숫자가 표시됨

이유: 인증서가 아파치에 제대로 로드되지 않아 엉뚱한 인증서를 클라이언트에 제공함

해결: httpd.conf의 VirtualHost 443이 도메인을 잘 낚아채도록 수정


StartSSL 사이트에서 무료로 1년 사용 가능한 SSL 인증서를 발급받을 수 있습니다.



1. 사이트 접속 (https://www.startssl.com) 및 회원 가입


오른쪽 상단의 Sign-up을 눌러 회원 가입을 진행합니다.






StartSSL 사이트는 흔히 알던 아이디-비밀번호 방식이 아닌 이메일-인증서 방식입니다.


이메일을 입력하고 인증번호 단계를 거치면 브라우저에 인증서를 발급하여 저장해 줍니다.

인증서가 곧 ID와 같은 역할을 해 줍니다.



인증번호 입력 과정이 끝나면 브라우저에 인증서가 발급됩니다.

(주의: 포멧 등의 사유로 인증서가 브라우저에서 삭제되지 않도록 주의 바랍니다.)






Login Now 버튼을 눌러 로그인에 진입합니다.







2. 로그인


브라우저의 인증서를 통해 1차로 인증이 완료되면 OTP 단계에 진입합니다.


인증서를 선택하고 로그인을 시도하면, 이메일로 일회용 비밀번호가 발급됩니다.

이메일로 전송된 일회용 비밀번호를 입력하여 로그인합니다.







3. 도메인 인증 (소유권 주장)


SSL 인증서를 발급받기 전에, 먼저 해야 하는 단계가 있습니다.

인증서를 발급받고자 하는 도메인에 대한 소유권을 인증해야 해야 합니다.


도메인의 소유자만 해당 도메인에 대해 인증서를 발급할 수 있습니다.

제3자가 내 도메인 이름으로 인증서를 발급하고, 피싱 페이지를 만들 수도 있기 때문이죠.


Validations Wizard 버튼을 눌러 해당 메뉴로 진입합니다.






맨 위의 '도메인 인증'을 선택하고 진행합니다.







인증받고자 하는 도메인을 입력합니다.






해당 도메인을 소유하고 있는지를 도메인 메일 인증을 통해 처리합니다.


부득이하게 도메인 메일이 없거나, webmaster같은 이메일 계정이 없어서 인증이 어렵다면

또 다른 인증 방식인 website control validation을 통해 인증 가능합니다.


(주어지는 html 파일을 웹사이트 루트에 업로드하여 이를 검사하는 방식입니다.)







도메인에 대한 인증(소유권)이 완료되었습니다.

Order SSL 버튼을 통해 인증서 발급 단계로 진입합니다.







4. 인증서 발급


호스트네임을 입력합니다. 무료 인증서는 5개까지 입력 가능합니다.

첫 번째 줄에 입력된 호스트네임이 인증서의 common name이 됩니다.


일반적으로 www를 포함한 도메인과 포함하지 않은 도메인을 입력합니다. (총 2개)







SSL/TLS는 공개키 암호 방식을 사용하기 때문에 공개키비밀키를 생성해야 합니다.

더불어서 인증서에 추가 정보(회사명, 기관명, 회사 주소, 이메일 등)를 입력해야 합니다.


공개키와 추가 정보를 합친 파일을 Certificate Signing Request(CSR) 이라고 합니다.

이 파일은 우리가 손으로 직접 만들 수는 없고 Tool을 사용하여 생성해야 합니다.


비밀키를 먼저 만들고, 비밀키를 사용하여 공개키를 생성하게 됩니다.

일반적으로 비밀키는 랜덤한 값으로 만들기 때문에, 이 역시 Tool이 알아서 해 줄 것입니다.


리눅스에서는 빨간 글씨로 제공된 openssl 명령어를 통해,

윈도우 상에서는 제공되는 StartComTool.exe 프로그램을 통해 생성 가능합니다.


위 Tool을 사용한다면 비밀키(key) 파일과 공개키+추가 정보(csr) 파일이 생성됩니다.

비밀키 파일은 서버 내의 안전한 곳에 잘 보관하시고 유출되지 않도록 해야 합니다.


생성된 CSR 파일의 내용을 복사하여 홈페이지에 입력하고 다음 단계로 진행합니다.







인증서 발급이 성공적으로 완료되었습니다.







5. 인증서 다운로드


Tool Box 메뉴 최상단의 인증서 목록(Certificate List) 메뉴로 진입합니다.







목록에 2개의 인증서가 보일 것입니다 (Products 항목으로 구분하세요)

- 하나는 방금 만든 SSL 인증서입니다.

- 하나는 StartSSL 사이트에 로그인 할 때 사용하는 Client 인증서입니다.


SSL 인증서 우측의 Retrieve 버튼을 누르면 crt 인증서를 다운받을 수 있습니다.

작은 역삼각형 버튼을 누르면 pem 인증서를 다운받을 수 있습니다.




네, rEFIt 개발이 중단되고 rEFInd를 사용해야 하는 상황이죠.

맥에 설치, 혹은 제거하는 법을 알려드리겠습니다.


너무 쉬워서 굳이 글을 쓸까 싶기도 한데...

rEFInd는 맥 전용이 아니기 때문에 맥을 위한 매뉴얼만 깔끔하게 있으면 좋긴 하겠죠!




1. 다운로드

다음 주소로 들어갑니다: http://www.rodsbooks.com/refind/getting.html

맨 위의 A binary zip file을 다운로드 받으시면 되겠습니다.

받으시면 압축을 풀어주세요.




2. 설치

터미널을 열고 해당 폴더의 경로로 들어갑니다.

> cd /Users/계정이름/Downloads/refind*

제 경우에는 다운로드 폴더 안에 있기 때문에 그리로 찾아 들어갔죠.

그리고는 install.sh를 실행하고, 계정 비밀번호를 입력합니다.

./install.sh 

설치 끗!




3. 삭제

네... 터미널에서 아래 명령어를 입력하시면 됩니다.

sudo rm -r /EFI/refind







끝입니다. 헤헤

  1. joo 2015.02.12 16:44 신고

    rEFLnd와 rEFLt 와 같은건가요?

    • Acu 2015.02.21 04:27 신고

      다릅니다. rEFIt는 맥 전용이고 rEFInd는 윈도우, 리눅스도 포함합니다.
      rEFIt를 개발하던 사람이 rEFInd를 새로 개발하면서 기존 t 버전을 중단시켰습니다.

  2. joo 2015.02.13 14:34 신고

    왜저는 삭제가안될까요
    부팅할때마다 계속뜹니다;

    • 2015.03.02 15:30 신고

      Finder장비에 들어가셔서 님의맥에 들어가시면 EFI라는 드라이브(파티션)이 있을검니다..그안에 있는 EFI폴더를 삭제 하고..나와서 EFI드라이브(파티션)을 추출하세요. 그럼 완벽히 삭제 됩니다

  3. 우야우ㅑㅇ 2015.02.24 00:39 신고

    ./install.sh 가 안돼요;

  4. 호호 2015.02.28 20:53 신고

    저도 제거 했는데 파티션만 사라지고 재부팅하면 계속 뜨네요 해결방법없어서 이전 타임머신 백업에서 불러오기 했습니다

    • 2015.03.02 15:34 신고

      Finder장비에 들어가셔서 님의맥에 들어가시면 EFI라는 드라이브(파티션)이 있을검니다..그안에 있는 EFI폴더를 삭제 하고..나와서 EFI드라이브(파티션)을 추출하세요. 그럼 완벽히 삭제 됩니다

  5. dindin 2015.03.17 22:55 신고

    계정 비밀번호는 뭘 얘기하는거죠??

  6. 맥등이 2015.05.08 22:51 신고

    맥북 프로에 centos5.5 설치해서 rEFind 설치했는데 부팅시 요세미티 항목만 나오고 centos는 안나오네요 ㅜ.ㅜ 뭐가 문제일까요? ㅜㅜ

  7. 골치 2015.08.31 01:23 신고

    0.9.0 설치했는데

    삭제가안되네요 난감..

    어떻게 삭제해야되나요

  8. TakeTheAir 2016.03.11 16:27 신고

    삭제하다 안되서 diskutil로 EFI 마운트해서 직접 삭제했네요...
    터미널에서 diskutil list로 EFI 드라이브 확인하셔서 마운트하고 refind 폴더 찾아서 삭제하세요

  9. 눈보라호야 2017.09.01 14:14 신고

    rm: /EFI/refind: No such file or directory

    리파인드 삭제를 알려주신데로 진행하는데 위와 같이 나오는데요
    이런경우는 어떻게 해야 하나요??

+ Recent posts