● 버전 확인 
  openssl version
 
● 개인키 생성 
  openssl genrsa -des3 -out server.key 2048 
● 인증요청서 생성 
  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 라고 나오면 완료됨 
● 인증서 생성 
  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>