[Linux Server] Apache SSL
[Linux Server] Apache SSL
XXX.key -> 비밀키
XXX.crt -> 인증서
ca.pem -> ROOT CA 인증서
[root@www conf] # cd /usr/local/src/apache/conf
[root@www conf] # mkdir sslkeys
[root@www sslkeys] # cd sslkeys
[root@www sslkeys] # openssl req -new -x509 -nodes -out server.crt -keyout server.key -days 999
Generating a 1024 bit RSA private key
.......................++++++
....++++++
writing new private key to 'server.key'
.....
Country Name (2 letter code) [GB]: KR <-------------한국이면 KR
(국가코드)
State or Province Name (full name) [Some-State]: Incheon <----- 도이름 (없으면 그냥 엔터)
Locality Name (eg, city) []:Incheon <------- 도시이름
Organization Name (eg, company) [Internet Widgits Pty Ltd]:com <------ 회사명
Organizational Unit Name (eg, section) []:development <-------부서명
Common Name (eg, YOUR name) []:xxxxxxxxxx <--- 사이트명 (정확히 기입을 해줘야 한다.)
Email Address []: (엔터)
[root@www sslkeys] # ls
server.crt server.key
[root@www sslkeys] # chmod 600 server.key
[root@www sslkeys] # cp /usr/local/src/apache/conf/httpd.conf /usr/local/src/apache/conf/httpd.conf.ssl
[root@www sslkeys] # vi /usr/local/src/apache/conf/httpd.conf
... (중략) ...
LoadModule ssl_module modules/mod_ssl.so <----------이부분이 없다면 좀 이상한건데 일단 적고 파일이 존재하는지 확인 해본다.
... (중략) ...
# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.conf <---------- # 주석 해제
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
[root@www sslkeys] # cp /usr/local/src/apache/conf/extra/httpd-ssl.conf /usr/local/src/apache/conf/extra/httpd-ssl.conf.ssl
[root@www sslkeys] # vi /usr/local/src/apache/conf/extra/httpd-ssl.conf
아래와 같이 추가 하고 기존 SSLCertificateFile/ SSLCertificateKeyFile은 주석 처리!!
SSLCertificateFile “/usr/local/src/apache/conf/sslkeys/server.crt”
SSLCertificateKeyFile “/usr/local/src/apache/conf/sslkeys/server.key”
※ ""(쌍따옴표) 주의
<VirtualHost> 안에 아래 내용 추가
#JSP 페이지 보이게 하기
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
JkMount /*.qual ajp13
JkMount /*.admin ajp13
JkMount /*.board ajp13
JkMount /*.bbs ajp13
[root@www sslkeys] # cp /usr/local/src/apache/conf/httpd.conf /usr/local/src/apache/conf/httpd.conf.ssl2
[root@www sslkeys] # vi /usr/local/src/apache/conf/httpd.conf (파일 제일 밑에 추가)
#HTTP로 들어오는 것을 HTTPS로 변환
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
[root@www sslkeys] # system-config-firewall에서 방화벽에가서 443포트를 열어 줌.
아파치/톰캣 재실행 후 http://localhost 또는 http://ip로 접속 했을 경우 http가 https로 자동 변환 되는 것을 확인
혹여 아파치 재실행 중 아래와 같이 나온다면
/usr/local/src/apache/conf/extra/httpd-ssl.conf 파일을 열고 120번째줄에 가보면
SSLCertificateFile “/usr/local/src/apache/conf/sslkeys/server.crt”
SSLCertificateKeyFile “/usr/local/src/apache/conf/sslkeys/server.key”
를 추가한 내용이 있을 겁니다. “”(쌍따옴표) 지우고 다시 쓰고 저장하고 나와 아파치 재실행 하면 됩니다.
'Linux' 카테고리의 다른 글
[Linux Server] 4. apache & tomcat connectors 연동 (0) | 2017.10.25 |
---|---|
[Linux Server] 3. tomcat 설치 & /etc/profile 수정 (0) | 2017.10.16 |
[Linux Server] apache 설치 & /etc/profile 수정(gcc 설치 확인) (0) | 2017.10.14 |
[Linux Server] jdk(java) 설치 (0) | 2017.10.12 |
[Linux Server] OpenSSH Source Compile (2) | 2017.10.11 |