2011/06/27

우분투ubuntu 서버에 아파치 apache2 ssl 설정하기

먼저 apache2를 설치 해야겠죠~

sudo apt-get install apache2


/etc/apache2/mods-available에 가서 ls 로 사용가능한 모듈을 살펴봅니다.

cd /etc/apache2/mods-avaliable

ls


설치가 되면 /etc/apache2/mods-enabled에 나타납니다.
ls 로 설치 전후를 확인하면 도움이 될 겁니다.

cd /etc/apache2/mods-enabled

ls


이제 SSL을 설치하고, 아파치를 reload 합니다.

sudo a2enmod ssl

sudo /etc/init.d/apache2 force-reload


기본 디렉토리에 가서 index.html 파일 만들고 http가 잘 동작하는지 먼저 확인합니다.
일반적으로 /var/www 변경은 default파일에서
https를 보기 위해서는 키와 인증서가 필요합니다.(암호화를 위한 기본 요건)

openssl을 이용하여 server.key를 생성합니다.

cd /etc/apache2

sudo openssl genrsa -des3 -out server.key 1024


server.key를 사용하여 인증 요청(csr)을 생성합니다.
사용되는 phrase는 반드시 기록해 놓습니다.(아파치 시작시 필요)

sudo openssl req -new -key server.key -out server.csr


적절한 값을 넣으신후, 자체 서명한 인증서를 생성합니다.
(-days는 인증서의 유효기간)

sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt


생성된 crt와 key를 copy하여 설치합니다.

sudo cp server.crt /etc/ssl/certs/

sudo cp server.key /etc/ssl/private/


default-ssl 파일을 열어서 아래와 같이 uncommnet합니다.
CertificateFile과 KeyFile위치를 cert와 key가 있는 곳으로 변경/확인합니다.

SSLEngine on

SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key


이제 SSL 을 enable 시킵니다.

sudo a2ensite default-ssl


/etc/apache2/sites-enabled에서 확인 가능합니다.

이제, 아파치를 재시작합니다.
sudo /etc/init.d/apache2 restart


https:// 로 확인해 보시면 됩니다. 인증서 신뢰할 수 있냐는 창이 뜹니다.
이것을 피하려면 공인 인증기관에서 발급받으시면 됩니다.
저는 webservice구현을 위해 설정해서 공인인증은 pass~ ^^

댓글 2개:

  1. 감사합니다 잘봤어요 근데
    왜 몇번을 해봤는데
    enter passphrase 에서
    윗단계에서 입력한거를 그대로 쳤는데
    Action start failed 가 되는걸까요..

    답글삭제
  2. log 를 확인해 보세요, log는 생각보다 많은 것을 말해줍니다. ^^

    답글삭제