CentOS 자체서명 서버 SSL 인증서 설치

CentOS에서 서버 SSL 인증서를 발급하고 설치하는 방법에 대해서 알아보겠습니다.

 

openssl 버전 확인

openssl 버전 확인

# openssl version

 

 

개인키 생성

개인키 생성

# openssl genrsa -des3 -out server.key 2048

 

인증요청서 생성

인증 요청서 csr 생성

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

 

Country Name (2 letter code) [XX]: 국가코드(kr)

State or Province Name (full name) []: 시 이름(Seoul)

Locality Name (eg, city) [Default City]: 시/군/구(Ansan)

Organization Name (eg, company) [Default Company Ltd]:회사명(jcompany)

Organizational Unit Name (eg, section) []: 부서명(mod)

Common Name (eg, your name or your server's hostname) []: 서비스 도메인명 ( sample.com )

Email Address []:이메일 주소 (sample@naver.com)

 

(Optional) 개인키에서 패스워드 제거

패스워드 없는 개인키 생성하기

# cp server.key server.key.origin

# openssl rsa -in server.key.origin -out server.key

writing RSA key 라고 나오면 완료

 

인증서 생성

crt 인증서 생성하기

# openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

 

인증서 생성 확인

개인키

# cat server.key | head -3

 

사설인증서

# cat server.crt | head -3

사설 인증서 확인

 

개인키와 인증서 설치

# cp server.key /etc/httpd/ssl/

# cp server.crt /etc/httpd/ssl/

 

httpd.conf 설정

# SSL Virtual host add

NameVirtualHost *:443



# SSL Virtual host add

<VirtualHost sample.com:443>

SSLEngine on

SSLCertificateFile /etc/httpd/ssl/server.crt

SSLCertificateKeyFile /etc/httpd/ssl/server.key

ServerAdmin master@host.sample.com

DocumentRoot /home/sample/public_html

ServerName sample.com

ErrorLog logs/ssl_sample.com-error_log

CustomLog logs/ssl_sample.com-access_log common

</VirtualHost>



#Redirect

<VirtualHost *:80>

ServerAdmin master@host.sample.com

DocumentRoot /home/sample/public_html

ServerName sample.com

ServerAlias www.sample.com



RewriteEngine On

RewriteCond %{HTTPS} !on

RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R,L]

ErrorLog logs/host.sample.com-error_log

CustomLog logs/host.sample.com-access_log common

</VirtualHost>

댓글

Designed by JB FACTORY