RadarURL
Skip to content
조회 수 3644 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

테스트 환경

System : Windows NT 5.1 build 2600
Apache Version 2.2.11 (Win32)
mod_ssl 2.2.11
OpenSSL 0.9.8i
PHP 5.2.9-1 

 

※ Windows- XP에 Apache SSL 보안서버 적용 방법

Apache2에는 기본적으로 openssl이 포함되어 있습니다. 따라서 별도의 설치 없이 바로 인증서를 설치 하 실 수 있습니다.

openssl의 실행파일은 Apache2/bin에 있으며, openssl.cnf 파일은 Apache2/conf에 있습니다.

따라서 작업을 하시기 전에 openssl.cnf 파일을 bin파일로 복사를 해주시면 됩니다.

또한 openssl의 버젼과 apache 버젼과는 어느정도 상관관계가 있으므로 서로 호완이 되는 버젼을 가지고 작업을 해야 하는 것 같습니다.

따라서 위의 버젼이 아니라면 아래의 내용이 적용되지 않을 수 있습니다.

 

※ SSL (Secure Socket Layer)
어플리케이션 계층과 TCP 사이에 놓인 계층으로 전송 데이터를 암호화하는 프로토콜입니다. 웹 브라우저와 웹 서버 사이에 보안 접속 통신을 말하며 데이터가 암호화되어 전송됩니다.  암호화 방식은 공개키, 개인키 방식으로 암호화하며 한쪽은 암호화, 다른 한쪽은 복호화 과정을 거쳐 데이터를 전송합니다. SSL은 인증서(certificate) 방식으로 동작합니다. SSL을 적용해야 할 페이지는 로그인 페이지, 개인 정보 페이지, 쇼핑몰의 구매 페이지등 개인정보나 보안에 신경써야 할 부분에 적용해야 합니다. 

 

준비 

우선 apache2/bin 폴더에서 libeay32.dll 과 ssleay32.dll 파일을 /windows/system32로 복사를 해줍니다.

 

1. csr 파일을 생성

cmd 명령어를 이용하여 openssl이 설치된 폴더로 이동한 후 아래의 명령어를 입력합니다.

 openssl  req -config openssl.cnf -new -out server-scmlab.csr

 

...

Enter PEM pass pharse : [개인키 생성 비번]

...

CSR 은 다음과 같은 항목을 가지고 있습니다.

- 국가 (country) : KO

- 구/군 (state or province)

- 시/도 (locality or city) 

- 회사명 (organization)

- 부서 (organizational unit)

- 도메인 주소 (common name) 

 

위 명령어를 수행한 후 CSR에 필요한 항목을 모두 작성하면 server-scmlab.csr 파일과 privkey.pem 파일이 생성됩니다. 

 

※ .csr 파일

CSR( Certificate Signing Request)의 약자로 서버를 운영하는 회사의 정보를 암호화하여 인증기관으로 보내 인증서를 발급받게 하는 일종의 신청서 파일입니다.

 

2. 개인키 생성

openssl rsa -in privkey.pem -out server-scmlab.key

...

Enter pass phrase for privkey.pem : [위에서 입력한 비밀번호]

writing RSA key.

위 명령어를 수행하면 server-scmlab.key 파일이 생성됩니다.

 

3. 인증서 생성 

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

위 명령어를 수행하면 server-scmlab.crt 파일이 생성됩니다.

 

이렇게 생성한 피일 중 server-scmlab.crt와 server-scmlab.key 파일을 {아파치 경로}/conf 디렉토리에 복사합니다.

이제 아파치 서버에는 인증서와 개인키가 있습니다. 이 키를 사용하여 아파치 서버가 SSL로 동작할 수 있게

아파치 서버의 httpd.conf 파일을 수정합니다.

 

4. htpd.conf 수정

 

4.1 httpd에 80 밑에 아래 443 추가

Listen 80

Listen 443


 

4.2 Directory 주석 처리

<Directory />
Options FollowSymLinks
AllowOverride None
#Order deny,allow
#Deny from all
</Directory>


주석 처리 해줍니다.

 

4.3 주석 해제

include conf/extra/httpd-vhosts.conf

Include conf/extra/httpd-userdir.conf
Include conf/extra/httpd-ssl.conf
의 주석은 해지 합니다.

 

5. httpd-ssl.conf 수정

apache2/conf/extra 폴더의 httpd-ssl.conf를 수정합니다.

아래와 같이작성을 하면 ssl을 적용하면, vhost를 사용하지 않아도 다중도메인에 일괄적으로 80과, 443을 사용 하실 수 있습니다.

즉 기존에는 두개의 도메인에 ssl을 적용하기 위해서는 442, 443 등 여러개의 포터를 이용해야 했으나 아래와 같이 적용을 하면

여러개의 도메인 모두 ssl 사용시 443 포터를 공용으로 이용 하실 수 있습니다.

 

------------------------------------------------

NameVirtualHost *:80
NameVirtualHost *:443

 

<VirtualHost *:80>
    ServerAdmin webmaster@aaa.com
    DocumentRoot /www/aaa
    ServerName  aaa.com

    ServerAlias www.aaa.com
</VirtualHost>

 

<VirtualHost *:80>
    ServerAdmin webmaster@bbb.com
    DocumentRoot /www/bbb
    ServerName  bbb.com

    ServerAlias www.bbb.com
</VirtualHost>

.....

......

 

<VirtualHost *:443>
ServerAdmin webmaser@aaa.com

DocumentRoot /www/aaa
ServerName aaa.com
ErrorLog /apache2/logs/ssl-aaa-error_log
CustomLog /apache2/logs/ssl-aaa-access_log common
SSLEngine on
SSLCertificateFile /apache2/conf/server-aaa.crt
SSLCertificateKeyFile /apache2/conf/server-aaa.key
</VirtualHost>

 

 

위와 같이 적용을 한 후 apache2를 재 실행 합니다.

 

아파치를 다시 실행한 후 https://도메인명을 입력하시면 다음과 같은 메지시가 나옵니다.

fece4161d25c83bde91faee305ab13bb.jpg

 

 

735a1ba32334835f6dec79c6f25c23b4.jpg

 

이러한 에러를 해결하시려면......돈을 주고 신뢰기관으로 부터 인증을 받으시면 됩니다.;;;

단순히 테스트를 해보시고 싶으시면 설치를 해보시는 것도 좋을 듯합니다. 

 

참고 사이트 :

 

1. http://blog.daum.net/question0921/765

2. http://junemp.tistory.com/entry/Apache-SSL-%EC%84%A4%EC%B9%98-2

 

출처 : http://www.scmlab.com/4588

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
71 Apache에서 .htaccess 파일 활용하기 - Rewrite mod JaeSoo 2009.05.12 3819
70 계정하나에 두개의 도메인을 각각의 서브폴더에 연결시키는 방법 JaeSoo 2009.06.23 4848
69 ReWrite Module JaeSoo 2009.06.24 3948
68 .htaccess JaeSoo 2009.06.24 4322
67 Tomcat 한글관련 JaeSoo 2009.07.20 4489
66 웹서버 속도 저하 문제 해결 (xp,Apache 2.2.X, XAMPP) JaeSoo 2010.04.05 5837
65 가상 호스트 설정법 JaeSoo 2010.04.28 6950
64 싸이트 외부링크 차단하는방법 JaeSoo 2011.02.19 7187
63 APMSETUP 7 + eAccelerator 설치.. JaeSoo 2011.05.21 9518
62 아파치 프로세스의 메모리 사용량 줄이기 JaeSoo 2011.06.01 9324
61 불법웹(이미지) 링크 차단에 대한 설정법 JaeSoo 2011.09.22 7315
60 외부 링크 방지 JaeSoo 2011.09.22 6112
59 WAMP (Windows+Apache+MySQL+PHP) 설치 JaeSoo 2011.11.14 5417
58 아파치 리라이트(rewrite) 엔진과 워터마킹을 이용한 이미지 무단 링크 방지 JaeSoo 2012.03.07 2936
57 .htaccess 사용해서 이미지 외부링크 막기 JaeSoo 2012.03.07 2919
56 동영상 외부 링크 금지 JaeSoo 2012.03.07 3106
55 .htaccess 를 이용한 이미지 핫링크 예방법 JaeSoo 2012.03.07 2630
54 APMSETUP + JSP 2 JaeSoo 2012.04.13 6125
53 Windows용 아파치 설정하기 (쓰레드 설정) JaeSoo 2012.07.12 1955
52 Comparison of WAMPs (Windows, Apache, MySQL, PHP/Perl/Python) JaeSoo 2012.07.13 4744
Board Pagination Prev 1 2 3 4 Next
/ 4

PageViews   Today : 8509 Yesterday : 5037 Total : 21964561  /  Counter Status   Today : 8216 Yesterday : 4602 Total : 1190939

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소