[HTTPS] 자체 서명 사설 SSL 인증서 만들기

SHARE:

사설 인증서를 만들고 웹 서버 설정 후 브라우저에서 사용하기까지 전체 과정을 살펴보고, 실습을 통해 쉽게 적용하고 사용할 수 있습니다.



[HTTPS] 자체 서명 사설 SSL 인증서 만들기


사설 인증서를 만들고 웹 서버 설정 후 브라우저에서 사용하기까지 전체 과정을 살펴보고, 실습을 통해 쉽게 적용하고 사용할 수 있습니다.
  • 목차


  • 웹 브라우저에서 https로 접속 시 서버 인증서를 발급한 CA(루트 인증 기관)를 식별한 다음 서버 인증서를 SSL 통신에 사용합니다. 잘 알려진 CA(예: GoDaddy 또는 DigiCert)에 의해 서명된 경우 기본적으로 웹 사이트의 인증서를 신뢰합니다. 이 경우 루트 인증서를 PC에 설치할 필요가 없습니다. 그러나 개발/테스트 환경이 있고 CA 서명된 인증서를 구입하지 않고 사용하려면 사용자 지정 CA를 직접 만들고 자체 서명된 인증서를 만들어서 사용할 수 있습니다.
    참고 자체 서명된 인증서는 기본적으로 신뢰할 수 없으며, 오래된 해시 및 암호 제품군을 사용할 수도 있습니다. 외부에 공개된 웹 사이트에서 보안을 강화하려면 잘 알려진 인증 기관에서 서명한 인증서를 구입해서 사용하십시오.
    이 문서에서는 다음 방법을 설명합니다.
    • 사용자 지정 인증서 기관 만들기
    • 사용자 지정 CA에서 서명한 자체 서명 인증서 만들기
    • 웹 서버에 SSL 인증서 적용하기
    • 자체 서명된 루트 인증서를 개인 컴퓨터에 설치해서 웹 서버 인증하기



    사전 요구 사항

    • OpenSSL이 설치 된 윈도우나 리눅스
    • 인증서 관리에 사용할 수 있는 다른 도구가 있을 수 있지만 이 문서에서는 OpenSSL을 사용합니다. 오픈 소스인 OpenSSL은 가장 인기 있는 도구 중 하나입니다. 모든 주요 플랫폼에서 사용할 수 있으며, 키 생성을 위한 간단한 명령줄 인터페이스를 제공합니다.
    • 웹 서버
    • NGINX 웹 서버를 사용하여 인증서를 테스트합니다.


    실습 환경

    • 운영 체제(OS) : CentOS 8
    • 권한이 있는 root 및 사용자 계정으로 실행
    • 실행 경로 : /root/ssl
    • IP 설정 및 인터넷이 가능한 환경


    OpenSSL 설치 확인


    openssl version 명령어로 확인

    CentOS 8에서는 기본 번들로 OpenSSL이 설치되어 있습니다.
    openssl version

    [root@runit ssl]# openssl version OpenSSL 1.1.1c FIPS 28 May 2019



    루트 인증서(CA) 만들기

    OpenSSL을 사용하여 루트 인증서(CA)를 만듭니다.

    루트 인증서 키 만들기

    OpenSSL이 설치된 서버에 SSH 로그인 후 다음 명령을 실행합니다. 이렇게 하면 암호로 보호된 키가 만들어집니다.

  • rootca.key 파일 만들기
  • openssl ecparam -out rootca.key -name prime256v1 -genkey

  • rootca.key 파일 내용 확인
  • cat rootca.key

    [root@runit ssl]# cat rootca.key -----BEGIN EC PARAMETERS----- BggqhkjOPQMBBw== -----END EC PARAMETERS----- -----BEGIN EC PRIVATE KEY----- MHcCAQEEIIHjF6gSS4xlCP097jjjVkl7w+GjrL/SuvHqYx+su9cboAoGCCqGSM49 AwEHoUQDQgAEquz+t68EzC+xVpjdqH+1k5D7xDjIboRzXi/m/dDsGWceXlwlw385 JHWQujPEqE4tIjY/UoS94DtNUjaoeABxFw== -----END EC PRIVATE KEY-----


    루트 인증서 CSR(인증 서명 요청) 만들기

    다음 명령을 사용하여 인증서 발급에 필요한 정보를 담고 있는 인증서 서명 요청 파일(csr)을 생성합니다.

  • rootca.csr 인증 서명 요청 파일 만들기
  • 입력 프롬프트가 표시되면 정규화된 도메인 이름(발급자의 도메인)과 같은 사용자 지정 CA에 대한 조직 정보를 입력합니다.
    openssl req -new -sha256 -key rootca.key -out rootca.csr

    [root@runit ssl]# openssl req -new -sha256 -key rootca.key -out rootca.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:KR State or Province Name (full name) []:Gyeonggi-do Locality Name (eg, city) [Default City]:Hwaseong Organization Name (eg, company) [Default Company Ltd]:RunIT Organizational Unit Name (eg, section) []:Cloud Common Name (eg, your name or your server's hostname) []:RunIT.Cloud CA Root Certificate Email Address []:webmaster@runit.cloud Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:Enter 누르기 An optional company name []:Enter 누르기


  • rootca.csr 인증 서명 요청 파일 내용 확인
  • 암호화된 인증 서명 요청 파일( csr)을 확인할 수 있습니다.
    cat rootca.csr

    [root@runit ssl]# cat rootca.csr -----BEGIN CERTIFICATE REQUEST----- MIIBYjCCAQkCAQAwgaYxCzAJBgNVBAYTAktSMRQwEgYDVQQIDAtHeWVvbmdnaS1k bzERMA8GA1UEBwwISHdhc2VvbmcxDjAMBgNVBAoMBVJ1bklUMQ4wDAYDVQQLDAVD bG91ZDEoMCYGA1UEAwwfUnVuSVQuQ2xvdWQgQ0EgUm9vdCBDZXJ0aWZpY2F0ZTEk MCIGCSqGSIb3DQEJARYVd2VibWFzdGVyQHJ1bml0LmNsb3VkMFkwEwYHKoZIzj0C AQYIKoZIzj0DAQcDQgAEquz+t68EzC+xVpjdqH+1k5D7xDjIboRzXi/m/dDsGWce Xlwlw385JHWQujPEqE4tIjY/UoS94DtNUjaoeABxF6AAMAoGCCqGSM49BAMCA0cA MEQCIHEXV+MEF5mJ91HQsr6mtMWzvvIHYAPGPtBlUWsnsq3BAiBOGOQ5skrTdiIM +ACVgnECu/ZqM6BPaBvZJS9WUZACVQ== -----END CERTIFICATE REQUEST-----



    루트 인증서(CA)를 만들고 자체 서명하기

    다음 명령을 사용하여 인증서 발급에 필요한 정보를 담고 있는 인증서 서명 요청 파일(csr) 및 인증서(CA)를 생성합니다.

  • rootca.crt SSL 인증서 파일 만들기
  • 인증 기간은 최대 6자리로 설정할 수 있습니다. 일반적으로 365일(1년)로 생성하거나 3650일(10년)로 생성할 수 있습니다. 이 문서에서는 최대 기간인 999999일(2739)년으로 인증서를 생성합니다.
    openssl x509 -req -sha256 -days 999999 -in rootca.csr -signkey rootca.key -out rootca.crt
    [root@runit ssl]# openssl x509 -req -sha256 -days 999999 -in rootca.csr -signkey rootca.key -out rootca.crt Signature ok subject=C = KR, ST = Gyeonggi-do, L = Hwaseong, O = RunIT, OU = Cloud, CN = RunIT.Cloud CA Root Certificate, emailAddress = webmaster@runit.cloud Getting Private key

  • rootca.crt SSL 인증서 파일 내용 확인
  • 암호화된 SSL 인증서(crt)를 확인할 수 있습니다.
    cat rootca.crt

    [root@runit ssl]# cat rootca.crt -----BEGIN CERTIFICATE----- MIICTDCCAfECFEr5tNn4vOOrq6TZlercP9zj9ND6MAoGCCqGSM49BAMCMIGmMQsw CQYDVQQGEwJLUjEUMBIGA1UECAwLR3llb25nZ2ktZG8xETAPBgNVBAcMCEh3YXNl b25nMQ4wDAYDVQQKDAVSdW5JVDEOMAwGA1UECwwFQ2xvdWQxKDAmBgNVBAMMH1J1 bklULkNsb3VkIENBIFJvb3QgQ2VydGlmaWNhdGUxJDAiBgkqhkiG9w0BCQEWFXdl Ym1hc3RlckBydW5pdC5jbG91ZDAgFw0yMDA0MTMwNzQxMzZaGA80NzU4MDMxMDA3 NDEzNlowgaYxCzAJBgNVBAYTAktSMRQwEgYDVQQIDAtHeWVvbmdnaS1kbzERMA8G A1UEBwwISHdhc2VvbmcxDjAMBgNVBAoMBVJ1bklUMQ4wDAYDVQQLDAVDbG91ZDEo MCYGA1UEAwwfUnVuSVQuQ2xvdWQgQ0EgUm9vdCBDZXJ0aWZpY2F0ZTEkMCIGCSqG SIb3DQEJARYVd2VibWFzdGVyQHJ1bml0LmNsb3VkMFkwEwYHKoZIzj0CAQYIKoZI zj0DAQcDQgAEquz+t68EzC+xVpjdqH+1k5D7xDjIboRzXi/m/dDsGWceXlwlw385 JHWQujPEqE4tIjY/UoS94DtNUjaoeABxFzAKBggqhkjOPQQDAgNJADBGAiEA8syO fe6lOTE28ntDB1mUsJAheBEWqxc87+YZNj05Gn0CIQCKDZTwr3W91eRERx/B3+hh JY7KdQNx3ZqiutJu/L4JRQ== -----END CERTIFICATE-----


    서버 인증서 만들기


    서버 인증서 키 만들기

    OpenSSL을 사용하여 서버 인증서를 만듭니다.
  • server.key 파일 만들기
  • 다음 명령을 사용하여 서버 인증서에 대한 키를 생성합니다.
    openssl ecparam -out server.key -name prime256v1 -genkey

  • server.key 파일 내용 확인
  • 암호화된 키 파일이 생성된 것을 확인할 수 있습니다.
    cat server.key
    [root@runit ssl]# cat server.key -----BEGIN EC PARAMETERS----- BggqhkjOPQMBBw== -----END EC PARAMETERS----- -----BEGIN EC PRIVATE KEY----- MHcCAQEEIDngU19/T0y/tf3hs/Dtf9vU884/vSzXhgRKa8K0vy6boAoGCCqGSM49 AwEHoUQDQgAEuCVmi+HEIZID2uOMzkr7hhuIxCUuQE7o9sC69zHzcWdJrpP0VvA2 nPe+LLlz9lX6998BUDWR7+KFrbVKzXrvFg== -----END EC PRIVATE KEY-----

    서버 인증서 CSR(인증 서명 요청) 만들기

    다음 명령을 사용하여 인증서 발급에 필요한 정보를 담고 있는 인증서 서명 요청 파일(csr)을 생성합니다.
    참고 서버 인증서의 CN(일반 이름)은 발급자의 도메인과 달라야 합니다. 예를 들어 이 경우 발급자의 CN은 RunIT.Cloud CA Root Certificate 이며 서버 인증서의 CN은 *.in.runit.cloud 입니다.
  • server.csr 인증 서명 요청 파일 만들기
  • CSR은 인증서를 요청할 때 CA에 제공하는 공개 키입니다. CA는 CSR 요청에 대한 인증서를 발급합니다. 입력 프롬프트가 표시되면 정규화된 도메인 이름(발급자의 도메인)과 같은 사용자 지정 CA에 대한 조직 정보를 입력합니다.
    openssl req -new -sha256 -key server.key -out server.csr
    [root@runit ssl]# openssl req -new -sha256 -key server.key -out server.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:KR State or Province Name (full name) []:Gyeonggi-do Locality Name (eg, city) [Default City]:Hwaseong Organization Name (eg, company) [Default Company Ltd]:RunIT Organizational Unit Name (eg, section) []:Cloud Common Name (eg, your name or your server's hostname) []:*.in.runit.cloud Email Address []:webmaster@runit.cloud Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:Enter 누르기 An optional company name []:Enter 누르기

  • server.csr 인증 서명 요청 파일 내용 확인
  • 암호화된 인증 서명 요청 파일( csr)을 확인할 수 있습니다.
    cat server.csr
    [root@runit ssl]# cat server.csr -----BEGIN CERTIFICATE REQUEST----- MIIBUzCB+gIBADCBlzELMAkGA1UEBhMCS1IxFDASBgNVBAgMC0d5ZW9uZ2dpLWRv MREwDwYDVQQHDAhId2FzZW9uZzEOMAwGA1UECgwFUnVuSVQxDjAMBgNVBAsMBUNs b3VkMRkwFwYDVQQDDBAqLmluLnJ1bml0LmNsb3VkMSQwIgYJKoZIhvcNAQkBFhV3 ZWJtYXN0ZXJAcnVuaXQuY2xvdWQwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAS4 JWaL4cQhkgPa44zOSvuGG4jEJS5ATuj2wLr3MfNxZ0muk/RW8Dac974suXP2Vfr3 3wFQNZHv4oWttUrNeu8WoAAwCgYIKoZIzj0EAwIDSAAwRQIhAJ/hYrruQO3DHGJl Hvd7lsUtEz535P3JfQHUU2FhVhUTAiBLaJLl3OTX/4g5ma0vf2Lj+w2x7EKu+TIk sSp5Dx5Lkg== -----END CERTIFICATE REQUEST-----



    서버 인증서를 만들고 자체 서명하기

    다음 명령을 사용하여 CSR 및 키로 인증서를 생성하고 CA의 루트 키로 서명합니다.

  • server.crt SSL 인증서 파일 만들기
  • 인증 기간은 최대 6자리로 설정할 수 있습니다. 일반적으로 365일(1년)로 생성하거나 3650일(10년)로 생성할 수 있습니다. 이 문서에서는 최대 기간인 999999일(2739)년으로 인증서를 생성합니다.
    openssl x509 -req -sha256 -days 999999 -in server.csr -CA rootca.crt -CAkey rootca.key -CAcreateserial -out server.crt
    [root@runit ssl]# openssl x509 -req -sha256 -days 999999 -in server.csr -CA rootca.crt -CAkey rootca.key -CAcreateserial -out server.crt Signature ok subject=C = KR, ST = Gyeonggi-do, L = Hwaseong, O = RunIT, OU = Cloud, CN = *.in.runit.cloud, emailAddress = webmaster@runit.cloud Getting CA Private Key

  • server.crt SSL 인증서 파일 내용 확인
  • 암호화된 SSL 인증서(crt)를 확인할 수 있습니다.
    cat server.crt
    [root@runit ssl]# cat server.crt -----BEGIN CERTIFICATE----- MIICOzCCAeICFG9XTpxwenVnMyJi7RblVYkys8+gMAoGCCqGSM49BAMCMIGmMQsw CQYDVQQGEwJLUjEUMBIGA1UECAwLR3llb25nZ2ktZG8xETAPBgNVBAcMCEh3YXNl b25nMQ4wDAYDVQQKDAVSdW5JVDEOMAwGA1UECwwFQ2xvdWQxKDAmBgNVBAMMH1J1 bklULkNsb3VkIENBIFJvb3QgQ2VydGlmaWNhdGUxJDAiBgkqhkiG9w0BCQEWFXdl Ym1hc3RlckBydW5pdC5jbG91ZDAgFw0yMDA0MTUwMTQ0MTNaGA80NzU4MDMxMjAx NDQxM1owgZcxCzAJBgNVBAYTAktSMRQwEgYDVQQIDAtHeWVvbmdnaS1kbzERMA8G A1UEBwwISHdhc2VvbmcxDjAMBgNVBAoMBVJ1bklUMQ4wDAYDVQQLDAVDbG91ZDEZ MBcGA1UEAwwQKi5pbi5ydW5pdC5jbG91ZDEkMCIGCSqGSIb3DQEJARYVd2VibWFz dGVyQHJ1bml0LmNsb3VkMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuCVmi+HE IZID2uOMzkr7hhuIxCUuQE7o9sC69zHzcWdJrpP0VvA2nPe+LLlz9lX6998BUDWR 7+KFrbVKzXrvFjAKBggqhkjOPQQDAgNHADBEAiApY8yR6oW6L3RZnWtC0ZV4paM2 CxSedAUSiMLLf43OwAIgeAVI9XkMQUkXHkZ19YtviY0SQDmj2WEEUJiJ6K+q2+0= -----END CERTIFICATE-----


    인증서 정보 확인

    다음 명령을 사용하여 CRT 파일을 출력하고 해당 내용을 확인합니다.
    openssl x509 -in server.crt -text -noout
    [root@runit ssl]# openssl x509 -in server.crt -text -noout Certificate: Data: Version: 1 (0x0) Serial Number: 6f:57:4e:9c:70:7a:75:67:33:22:62:ed:16:e5:55:89:32:b3:cf:a0 Signature Algorithm: ecdsa-with-SHA256 Issuer: C = KR, ST = Gyeonggi-do, L = Hwaseong, O = RunIT, OU = Cloud, CN = RunIT.Cloud CA Root Certificate, emailAddress = webmaster@runit.cloud Validity Not Before: Apr 15 01:44:13 2020 GMT Not After : Mar 12 01:44:13 4758 GMT Subject: C = KR, ST = Gyeonggi-do, L = Hwaseong, O = RunIT, OU = Cloud, CN = *.in.runit.cloud, emailAddress = webmaster@runit.cloud Subject Public Key Info: Public Key Algorithm: id-ecPublicKey Public-Key: (256 bit) pub: 04:b8:25:66:8b:e1:c4:21:92:03:da:e3:8c:ce:4a: fb:86:1b:88:c4:25:2e:40:4e:e8:f6:c0:ba:f7:31: f3:71:67:49:ae:93:f4:56:f0:36:9c:f7:be:2c:b9: 73:f6:55:fa:f7:df:01:50:35:91:ef:e2:85:ad:b5: 4a:cd:7a:ef:16 ASN1 OID: prime256v1 NIST CURVE: P-256 Signature Algorithm: ecdsa-with-SHA256 30:44:02:20:29:63:cc:91:ea:85:ba:2f:74:59:9d:6b:42:d1: 95:78:a5:a3:36:0b:14:9e:74:05:12:88:c2:cb:7f:8d:ce:c0: 02:20:78:05:48:f5:79:0c:41:49:17:1e:46:75:f5:8b:6f:89: 8d:12:40:39:a3:d9:61:04:50:98:89:e8:af:aa:db:ed


    웹 서버에 SSL 인증서 적용하기


    CA 인증서를 포함하는 서버 인증서 만들기

    CAT 명령을 사용해서 server.crt 와 rootca.crt 파일 내용을 합친 인증서 파일을 생성합니다.
    cat server.crt rootca.crt > server.pem

  • server.pem 파일 내용 확인
  • cat server.pem
    [root@runit ssl]# cat server.pem -----BEGIN CERTIFICATE----- MIICOzCCAeICFG9XTpxwenVnMyJi7RblVYkys8+gMAoGCCqGSM49BAMCMIGmMQsw CQYDVQQGEwJLUjEUMBIGA1UECAwLR3llb25nZ2ktZG8xETAPBgNVBAcMCEh3YXNl b25nMQ4wDAYDVQQKDAVSdW5JVDEOMAwGA1UECwwFQ2xvdWQxKDAmBgNVBAMMH1J1 bklULkNsb3VkIENBIFJvb3QgQ2VydGlmaWNhdGUxJDAiBgkqhkiG9w0BCQEWFXdl Ym1hc3RlckBydW5pdC5jbG91ZDAgFw0yMDA0MTUwMTQ0MTNaGA80NzU4MDMxMjAx NDQxM1owgZcxCzAJBgNVBAYTAktSMRQwEgYDVQQIDAtHeWVvbmdnaS1kbzERMA8G A1UEBwwISHdhc2VvbmcxDjAMBgNVBAoMBVJ1bklUMQ4wDAYDVQQLDAVDbG91ZDEZ MBcGA1UEAwwQKi5pbi5ydW5pdC5jbG91ZDEkMCIGCSqGSIb3DQEJARYVd2VibWFz dGVyQHJ1bml0LmNsb3VkMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuCVmi+HE IZID2uOMzkr7hhuIxCUuQE7o9sC69zHzcWdJrpP0VvA2nPe+LLlz9lX6998BUDWR 7+KFrbVKzXrvFjAKBggqhkjOPQQDAgNHADBEAiApY8yR6oW6L3RZnWtC0ZV4paM2 CxSedAUSiMLLf43OwAIgeAVI9XkMQUkXHkZ19YtviY0SQDmj2WEEUJiJ6K+q2+0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICTDCCAfECFEr5tNn4vOOrq6TZlercP9zj9ND6MAoGCCqGSM49BAMCMIGmMQsw CQYDVQQGEwJLUjEUMBIGA1UECAwLR3llb25nZ2ktZG8xETAPBgNVBAcMCEh3YXNl b25nMQ4wDAYDVQQKDAVSdW5JVDEOMAwGA1UECwwFQ2xvdWQxKDAmBgNVBAMMH1J1 bklULkNsb3VkIENBIFJvb3QgQ2VydGlmaWNhdGUxJDAiBgkqhkiG9w0BCQEWFXdl Ym1hc3RlckBydW5pdC5jbG91ZDAgFw0yMDA0MTMwNzQxMzZaGA80NzU4MDMxMDA3 NDEzNlowgaYxCzAJBgNVBAYTAktSMRQwEgYDVQQIDAtHeWVvbmdnaS1kbzERMA8G A1UEBwwISHdhc2VvbmcxDjAMBgNVBAoMBVJ1bklUMQ4wDAYDVQQLDAVDbG91ZDEo MCYGA1UEAwwfUnVuSVQuQ2xvdWQgQ0EgUm9vdCBDZXJ0aWZpY2F0ZTEkMCIGCSqG SIb3DQEJARYVd2VibWFzdGVyQHJ1bml0LmNsb3VkMFkwEwYHKoZIzj0CAQYIKoZI zj0DAQcDQgAEquz+t68EzC+xVpjdqH+1k5D7xDjIboRzXi/m/dDsGWceXlwlw385 JHWQujPEqE4tIjY/UoS94DtNUjaoeABxFzAKBggqhkjOPQQDAgNJADBGAiEA8syO fe6lOTE28ntDB1mUsJAheBEWqxc87+YZNj05Gn0CIQCKDZTwr3W91eRERx/B3+hh JY7KdQNx3ZqiutJu/L4JRQ== -----END CERTIFICATE-----



    NGINX SSL 설정하기

    NGINX 기본 설치 후 SSL 인증서를 복사하고 적용합니다.

  • SSL 인증서 복사하기
  • cp -arp /root/ssl /etc/nginx/

  • /etc/nginx/nginx.conf 파일에 SSL 설정 추가하기
  • 다음 구문의 주석(#)을 해제하고 server.key 와 server.pem 파일 경로를 설정합니다.
    vi /etc/nginx/nginx.conf
    [root@runit ssl]# vi /etc/nginx/nginx.conf # Settings for a TLS enabled server. # server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/nginx/ssl/server.pem"; ssl_certificate_key "/etc/nginx/ssl/server.key"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_ciphers PROFILE=SYSTEM; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }

  • NGINX 설정 확인하기
  • nginx -t
    [root@runit ssl]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

  • NGINX 서비스 재실행하기
  • systemctl restart nginx



    자체 서명된 루트 인증서를 개인 컴퓨터에 설치해서 웹 서버 인증하기


    개인 컴퓨터 호스트 추가하기

    네임 서버( DNS)에 등록되지 않은 도메인으로 테스트하기 때문에 개인 컴퓨터에서 www.in.runit.cloud의 IP 주소를 호스트 파일에 추가해야 접속할 수 있습니다.

  • www.in.runit.cloud 호스트 추가하기
  • 관리자 계정으로 Windows key + R 키를 눌러서 명령 프롬프트를 실행합니다. notepad 명령으로 hosts 파일을 열어서 내용을 추가합니다.
    notepad C:\Windows\System32\drivers\etc\hosts
    [root@runit ssl]# notepad C:\Windows\System32\drivers\etc\hosts # Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost 192.168.33.33 www.in.runit.cloud


    루트 인증서(CA) 설치하기

    윈도우 익스플로러 실행 후 https://www.in.runit.cloud 사이트에 접속합니다.

  • 추가 정보 클릭 -> 웹페이지로 이동(권장하지 않음) 클릭
  • SSL 인증서 경고화면.PNG

  • 인증서 오류 클릭 -> 인증서 보기 클릭
  • SSL 인증서 보기 클릭

  • 인증 경로 클릭
  • ' 신뢰된 인증 기간에서 이 인증서를 검증할 수 없습니다. ' 라는 메세지를 확인할 수 있습니다. 인증 경로 클릭

  • RunIT.Cloud CA Root Certificate 인증서 클릭 -> 인증서 보기 클릭
  • SSL 인증서 보기 클릭


  • 인증서 설치(i) 클릭
  • SSL 인증서 설치 클릭

  • 인증서 가져오기 마법사 -> 현재 사용자(C) 선택 후 다음 클릭
  • 인증서 가져오기 마법사

  • 모든 인증서를 다음 저장소에 저장(P) 클릭 -> 찾아보기(R) 클릭 -> 신뢰할 수 있는 루트 인증 기관 확인 클릭 -> 다음(N) 클릭
  • 신뢰할 수 있는 루트 인증 기관 확인 클릭

  • 인증서 가져오기 마법사 완료 -> 마침(F) 클릭
  • 인증서 가져오기 마법사 완료


  • 이 인증서를 설치하시겠습니까? -> 예(Y) 클릭
  • SSL 인증서 설치 화면

  • 가져오기를 완료했습니다. -> 확인 클릭
  • SSL 인증서 가져오기 완료

  • 웹 사이트 재접속
  • 웹 브라우저를 재실행 해야 CA 루트 인증서가 적용됩니다. 윈도우 익스플로러를 종료하고 다시 실행해서 https://www.in.runit.cloud 사이트에 접속합니다. 인증서 오류 없이 신뢰할 수 있는 사이트로 보이는 것을 확인할 수 있습니다. SSL 인증서 유효성 검사 정상

    COMMENTS

    이름

    #/boot,1,#가상 머신 만들기,1,#가상 머신 자동 시작,2,#가상화,1,#게이트웨이 프로세스,1,#그라파나,1,#그라파나 패스워드 초기화,1,#데이터 시각화,1,#데이터베이스 설치,1,#로컬 ISO 저장소 만들기,1,#리눅스,18,#리눅스 명령어,3,#리눅스 명령어 자동 완성,1,#리눅스 서버 보안 취약점 점검,1,#리눅스 설치,1,#리눅스 한글 설정,1,#리눅스에서 php-fpm 설치,1,#마리아db,1,#모니터링,1,#모바일 페이지,1,#모바일 페이지 보여주기,1,#모바일 페이지 연동,1,#백업 자동화,1,#버추얼박스,1,#버추얼박스 설치,1,#사설 인증서,1,#사설 인증서 생성,1,#서버 가상화,1,#쉘 스크립트,1,#스크립트,1,#스크립트 개발,2,#슬랙,1,#슬랙 가이드,1,#슬랙 가입,1,#슬랙 로그인,1,#슬랙 매뉴얼,1,#슬랙 활용법,1,#시작 오류,1,#시트릭스,1,#시트릭스 하이퍼바이저,1,#오픈 소스 가상화,1,#원격 데스크톱 클립보드 차단 레지스트리,1,#원격데스크톱 클립보드 차단,1,#웹서버,2,#윈도우,2,#윈도우 10,3,#윈도우 10 전원 옵션,1,#윈도우 10 환경변수 추가,1,#윈도우10 환경변수 바로 적용,1,#자동 완성,1,#자체 서명,1,#자체 서명 인증서,1,#자체 서명 인증서 만들기,1,#전원 옵션 비활성화,1,#커널 삭제,1,#태블로,1,#파이썬,1,#파이썬 3.7.6,1,#파이썬 설치,1,#파일 업로드,1,#파일 업로드 용량 제한,1,#파티션 용량 부족,1,#프록시 설정,1,#하이퍼바이저,1,#한글 깨짐,1,#환경변수 편집창,1,#환경변수 path 여러개,1,#admin,1,#admin password reset,1,#apm,1,#Auth_basic,1,#backup,1,#bash,2,#bash shell,1,#bash-compilation,1,#centos,12,#centos 6,5,#centos 6에서 python 3설치,1,#centos 8,6,#centos 8 설치,1,#centos 8 한글,1,#centos 8 한글 설정,1,#centos 8 character set,1,#centos 8 install,1,#centos 8 locale set,1,#centos 설치,1,#centos repo,1,#centos-base.repo,1,#citrix,1,#citrix hyperviosr install,1,#citrix hypervisor,2,#Cmd 경로 설정,1,#Command autocomplete,1,#ctirix,1,#ctrix,1,#database,1,#db,1,#db 설치,1,#dropping packet,1,#grafana admin reset,1,#host key verification fail,1,#host only network,1,#http 기본 인증,1,#http 인증,1,#http authentication,1,#https,1,#hypervisor,1,#iptables,1,#isms,1,#iso 저장소,1,#jennifer 5,1,#jennifer 5 admin,1,#jennifer admin,1,#jennifer admin password,1,#jennifer password reset,1,#linux,3,#local ISO storage,1,#maria,1,#mariadb 설치,1,#mariadb install,1,#monitoring,1,#mysql,1,#nf_conntrack,1,#nginx 1.16,1,#nginx 1.16 install,1,#nginx 1.18,1,#Nginx 로그인,1,#nginx 로그인 페이지,1,#nginx 모바일,1,#nginx 모바일 연동,1,#nginx 설치,2,#nginx 접속 제한,1,#nginx 최신 버전,1,#Nginx basic auth login form,1,#Nginx basic auth security,1,#nginx basic http authentication,1,#Nginx check basic auth,1,#nginx htpasswd,1,#nginx http authentication,1,#nginx install,2,#nginx mobile redirect,1,#nginx reverse proxy setting#nginx 리버스 프록시 설정,1,#nginx ssl,1,#Ngx_http_auth_basic_module,1,#only sftp account,1,#password reset,1,#php-fpm,1,#php-fpm 설치,1,#php-fpm install,1,#proxy,1,#putty 눈아픔,1,#putty 파란색,1,#putty 환경설정,1,#python 3.7.6,1,#python install,1,#RDP 파일 복사 차단,1,#rdp접속시 클립보드 사용제한,1,#reverse proxy,1,#rsync,1,#rsync 백업,1,#security,1,#sftp,1,#sftp 계정,1,#shell script,2,#ssh,3,#ssh 배치모드,1,#ssh 자동 로그인,1,#ssh 자동화 스크립트,1,#sshpass,3,#sshpass 로그인,1,#sshpass 자동 로그인,1,#ssl,1,#swap,1,#swap 메모리 사용,1,#swap 메모리 확인,1,#swap check,1,#swap memory,1,#table full,1,#tableau 시각화,1,#tmux,1,#tmux 명령어,1,#tmux 명령어 옵션,1,#tmux 설치,2,#tmux 소스 컴파일,1,#tmux 자동 완성,1,#tmux bash autocomplete,1,#tmux install,2,#tmux source install,1,#tmux soure,1,#Virtualization,6,#vm,3,#vm 운영,1,#vm 자동 시작,2,#vm auto start,1,#vm create,1,#was monitoring,1,#web,4,#windows 10,2,#Windows path 추가,1,#xencenter,1,#xenserver 설치,1,#xenserver install,1,#yum install tmux,1,#yum.conf,1,#zabbix 그래프 한글 깨짐,1,#zabbix 5.0,1,#zabbix 그래프,1,#zabbix 한글 깨짐,1,리눅스,1,메모리,1,사용법,1,서버 관리,1,슬랙 사용법,1,윈도우 10 암호분실,1,윈도우 10 administrator 암호,1,윈도우 로컬 계정 비밀번호,1,윈도우 로컬 계정 비밀번호 분실,1,윈도우 비밀번호 변경,1,프로세스,1,한국어 설정,1,한글 설정,1,backup,1,CentOS 8,1,grafana,1,htpasswd,1,jennifer,1,linux,24,linux#tmux rpm,1,mariadb,1,nginx,8,php,1,putty,1,python,1,SLACK,1,ssl 인증서,1,tableau,1,tmux,3,virtualbox,3,virtualbox install,1,windows,6,Windows 10,5,xcp-ng,2,xenserver,3,zabbix,1,
    ltr
    item
    시스템 엔지니어의 세상: [HTTPS] 자체 서명 사설 SSL 인증서 만들기
    [HTTPS] 자체 서명 사설 SSL 인증서 만들기
    사설 인증서를 만들고 웹 서버 설정 후 브라우저에서 사용하기까지 전체 과정을 살펴보고, 실습을 통해 쉽게 적용하고 사용할 수 있습니다.
    https://1.bp.blogspot.com/-9qlR40u8MkQ/X79X2VH7uyI/AAAAAAAAMsY/xsvvVp_XZtkDfFigTlH8tV3UtVEnYyItACLcBGAsYHQ/s0/%255BHTTPS%255D%2B%25E1%2584%258C%25E1%2585%25A1%25E1%2584%258E%25E1%2585%25A6%2B%25E1%2584%2589%25E1%2585%25A5%25E1%2584%2586%25E1%2585%25A7%25E1%2586%25BC%2B%25E1%2584%2589%25E1%2585%25A1%25E1%2584%2589%25E1%2585%25A5%25E1%2586%25AF%2BSSL%2B%25E1%2584%258B%25E1%2585%25B5%25E1%2586%25AB%25E1%2584%258C%25E1%2585%25B3%25E1%2586%25BC%25E1%2584%2589%25E1%2585%25A5%2B%25E1%2584%2586%25E1%2585%25A1%25E1%2586%25AB%25E1%2584%2583%25E1%2585%25B3%25E1%2586%25AF%25E1%2584%2580%25E1%2585%25B5%2B%25281%2529.png
    https://1.bp.blogspot.com/-9qlR40u8MkQ/X79X2VH7uyI/AAAAAAAAMsY/xsvvVp_XZtkDfFigTlH8tV3UtVEnYyItACLcBGAsYHQ/s72-c/%255BHTTPS%255D%2B%25E1%2584%258C%25E1%2585%25A1%25E1%2584%258E%25E1%2585%25A6%2B%25E1%2584%2589%25E1%2585%25A5%25E1%2584%2586%25E1%2585%25A7%25E1%2586%25BC%2B%25E1%2584%2589%25E1%2585%25A1%25E1%2584%2589%25E1%2585%25A5%25E1%2586%25AF%2BSSL%2B%25E1%2584%258B%25E1%2585%25B5%25E1%2586%25AB%25E1%2584%258C%25E1%2585%25B3%25E1%2586%25BC%25E1%2584%2589%25E1%2585%25A5%2B%25E1%2584%2586%25E1%2585%25A1%25E1%2586%25AB%25E1%2584%2583%25E1%2585%25B3%25E1%2586%25AF%25E1%2584%2580%25E1%2585%25B5%2B%25281%2529.png
    시스템 엔지니어의 세상
    https://www.runit.cloud/2020/04/https-ssl.html
    https://www.runit.cloud/
    https://www.runit.cloud/
    https://www.runit.cloud/2020/04/https-ssl.html
    true
    7559506062450536879
    UTF-8
    Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content