Apache에 SSL 적용시 VirtualHost 적용하기
Posted 2010. 1. 22. 22:18설정 환경 : Linux
Apache에 SSL 을 적용하게 되면 대개 www.m-sys.co.kr 이나 회원 로그인 할때만 사용을 하는데 고객의 요청으로 서브 도메인까지 SSL 적용을 해야하는 경우가 있어서 제가 사용한 방법을 글로 남깁니다.
Apache 2.0.x 이하 버젼의 경우를 먼저 하도록 하겠습니다.
일단 ssl.conf 이 파일을 찾는게 중요합니다. 대부분의 설정을 여기서 하기 때문이죠
# cd /usr/local/apache/conf <- 대부분 여기에 위치해요~
아차~ 제일 중요한 vhost.conf 에 있는 내용을 ssl.conf 로 넣어야 하니 이 작업을 먼저 하겠습니다.
# cat vhost.conf >> ssl.conf <- 이렇게 하면 vhost.conf 의 내용이 ssl.conf 제일 밑 부분으로 연결되어 추가 됩니다.
그다음 vi 를 이용하여 수정~~
# vi ssl.conf
<IfDefine SSL> <- cat 을 이용하여 vhost.conf 내용을 그냥 가져왔으니 여기와 끝을 잘 보시고 수정하셔야합니다. 맨 끝에는 </IfDefine> 이게 있어야겠죠?
.
.
.
Listen 443
NameVirtualHost 218.*.*.213:443 <- 대충 여기에 해당 서버 IP랑 Port 443 을 추가합니다.
그리고
SSLPassPhraseDialog builtin <- 수정을 하거나 주석(#) 처리해서 Server Reboot 시 패스워드를 자동으로 기입하도록 해야합니다. 아참 이부분은 Apache 시작시 패스워드를 묻지 않도록 인증서를 만들었으면 패스~~~~~~하셔도 됩니다.
요렇게... ^^
#SSLPassPhraseDialog builtin
SSLPassPhraseDialog exec:/usr/local/apache/conf/ssl/startssl_pw.sh <- 이부분은 저의 블로그에 보면 Apache 에서 자동 패스워드 적용이라는 타이틀로 되어 있는걸 참고 하시길 바랍니다.
그리고 밑의 내용처럼 수정 해 주시면 됩니다.
<VirtualHost 218.*.*.213:443>
ServerAdmin webmaster@test.co.kr
DocumentRoot /usr/local/home/test
ServerName test.co.kr:443
ServerAlias test.co.kr:443
ScriptAlias /cgi-bin/ "/home/WWW/test/cgi/"
ErrorLog logs/test-error_log
CustomLog logs/test-access_log combined
</VirtualHost>
<VirtualHost 218.*.*.213:443>
ServerAdmin webmaster@test.co.kr
DocumentRoot /usr/local/home/test
ServerName test.co.kr:443
ServerAlias test.co.kr:443
ScriptAlias /cgi-bin/ "/home/WWW/test/cgi/"
ErrorLog logs/test-error_log
CustomLog logs/test-access_log combined
</VirtualHost>
.
.
.
.
</IfDefine> <-꼭~ 확인하세요~
이제 Apache2.0.x 이상 버젼을 하도록 하겠습니다.
뭐~ 위에 꺼와 틀린점은 ssl.conf 파일 이름과 디렉토리 위치가 틀리다는거 빼고는 다 똑같습니다.
# cd /usr/local/apache/conf/extra <- 대부분 여기에 위치해요~
아차~ 제일 중요한 httpd-vhosts.conf 에 있는 내용을 httpd-ssl.conf 로 넣어야 하니 이 작업을 먼저 하겠습니다.
# cat httpd-vhosts.conf >> httpd-ssl.conf <- 이렇게 하면 httpd-vhosts.conf 의 내용이 httpd-ssl.conf 제일 밑 부분으로 연결되어 추가 됩니다.
그다음 vi 를 이용하여 수정~~
# vi httpd-ssl.conf
<IfDefine SSL> <- cat 을 이용하여 httpd-vhosts.conf 내용을 그냥 가져왔으니 여기와 끝을 잘 보시고 수정하셔야합니다. 맨 끝에는 </IfDefine> 이게 있어야겠죠?
.
.
.
Listen 443
NameVirtualHost 218.*.*.213:443 <- 대충 여기에 해당 서버 IP랑 Port 443 을 추가합니다.
그리고
SSLPassPhraseDialog builtin <- 수정을 하거나 주석(#) 처리해서 Server Reboot 시 패스워드를 자동으로 기입하도록 해야합니다. 아참 이부분은 Apache 시작시 패스워드를 묻지 않도록 인증서를 만들었으면 패스~~~~~~하셔도 됩니다.
요렇게... ^^
#SSLPassPhraseDialog builtin
SSLPassPhraseDialog exec:/usr/local/apache/conf/ssl/startssl_pw.sh <- 이부분은 저의 블로그에 보면 Apache 에서 자동 패스워드 적용이라는 타이틀로 되어 있는걸 참고 하시길 바랍니다.
그리고 밑의 내용처럼 수정 해 주시면 됩니다.
<VirtualHost 218.*.*.213:443>
ServerAdmin webmaster@test.co.kr
DocumentRoot /usr/local/home/test
ServerName test.co.kr:443
ServerAlias test.co.kr:443
ScriptAlias /cgi-bin/ "/home/WWW/test/cgi/"
ErrorLog logs/test-error_log
CustomLog logs/test-access_log combined
</VirtualHost>
<VirtualHost 218.*.*.213:443>
ServerAdmin webmaster@test.co.kr
DocumentRoot /usr/local/home/test
ServerName test.co.kr:443
ServerAlias test.co.kr:443
ScriptAlias /cgi-bin/ "/home/WWW/test/cgi/"
ErrorLog logs/test-error_log
CustomLog logs/test-access_log combined
</VirtualHost>
.
.
.
.
</IfDefine> <-꼭~ 확인하세요~
이상입니다.
저도 아직 수정해야 할 부분이 많이 있습니다. 혹시나 제가 적은 글에서 틀린 점이 있거나 의문사항이 있으면 댓글을 남겨주시길 바랍니다.
'OS 운영체제 및 보안 > Linux' 카테고리의 다른 글
FTP 로그인 후 디렉토리 내용(파일)이 보이지 않을때.... (0) | 2016.10.14 |
---|---|
[스크랩] JBoss 6.0 설치하기 (0) | 2014.06.19 |
CentOS 6.4 설치(APM 포함)시 유의할 점 (0) | 2014.03.28 |
[스크랩] CentOS에서 YUM으로 PHP 5.3 업그레이드 하기 (0) | 2013.11.26 |
Linux에서 nfs mount 가 안될때 (0) | 2013.09.12 |
Apache2.0.x SSL 적용하여 실행시 패스워드를 묻지 않고 자동실행 (0) | 2010.01.21 |
서버설치후 해야할 일 (0) | 2008.11.06 |
chattr 와 lsattr 파일 권한 (0) | 2008.11.06 |
BIND 최신버전으로 업그레이드 (0) | 2008.11.06 |
find 유용한 사용법 (0) | 2008.11.06 |
- Filed under : OS 운영체제 및 보안/Linux