반응형


인증서

  • public key에 대한 sign 파일
  • private key로 서명요청파일(CSR)을 생성하여 인증서 생성시 public키가 포함된 인증서 파일이 생성됨
  • 해당 public키를 이용하여 통신을 하며 해당 키가 정상적인 public key인지를 인증할 수 있음
  • 이 public key에 대한 보증을 하는 단체를 중계인증기관, 최상위 인증 기관을 RootCA라고 부르며 최상위 인증기관은 중계 인증기관을 보증함. 인증 기관 없이 자기 자신을 인증된 것을 Self Sign 인증서라고 하며 다른 누구도 보증해주지 않는 신뢰할 수 없는 인증서가 됨.

인증기관 인증서 : 인증서<-중계인증기관<-최상위인증기관(Self Signed)

Self Sign 인증서 : 인증서(Self Signed)




인증서 생성 순서

1. 개인키(Private Key) 생성

2. 서명 요청 파일(CSR : 인증 서명 요청) 파일 생성

3. 인증서 생성




인증서 생성

1. 개인키(Private Key) 생성

   - 개별적으로 개인키를 생성하며 별도의 개인키 생성 없이 바로 CSR을 생성하며 개인키 생성 가능


   1.1 Without Password

   # openssl genrsa -out <Key File Name> <Key Size>


$ openssl genrsa -out private_nopassword.key 2048

Generating RSA private key, 2048 bit long modulus

...............................................................+++

...............+++

e is 65537 (0x10001)



   1.2 With Password

   # openssl genrsa -<Algorithm> -out <Key File Name> <Key Size>

   Alorithm : -aes128, -aes192, -aes256, -camellia192, -camellia256, -des, -des3 등


$ openssl genrsa -aes256 -out private_password.key 2048

Generating RSA private key, 2048 bit long modulus

.................................................................................................+++

...........................+++

e is 65537 (0x10001)

Enter pass phrase for private_password.key:

Verifying - Enter pass phrase for private_password.key:



  1.3 생성된 개인키 정보 확인

   # openssl rsa -text -in <Key File Name>


$ openssl rsa -text -in private_password.key

Enter pass phrase for private_password.key:

Private-Key: (2048 bit)

modulus:

    00:c7:0f:3c:22:91:27:cd:d5:00:77:a7:bf:04:a4:

    3c:a9:6c:b6:ee:83:81:6d:de:ff:36:a1:11:58:bf:

    35:29:d3:61:93:e5:31:00:42:ad:49:21:eb:08:b0:

    ef:60:0b:ab:a5:96:31:8c:b9:4e:02:84:11:e0:73:

    86:58:c5:95:a1:39:42:34:9f:b3:3e:90:4b:c5:d1:

    64:c4:47:d8:9d:9c:ad:c5:ee:e2:2f:1c:a4:ed:4f:

    c8:4c:6f:19:6e:d2:5e:36:af:ba:23:84:72:a2:2d:

    7a:be:76:94:30:6e:83:88:e6:24:8a:95:80:c0:07:

    60:24:75:84:40:41:f9:63:b2:ac:7d:64:bf:46:9d:

    e9:98:0d:ee:bf:0b:36:3f:79:b4:70:18:e2:b7:c1:

    b6:9e:1d:8b:8e:76:da:28:dd:6a:25:fc:5f:96:50:

    1f:97:8e:e5:4b:82:71:8b:56:b8:7c:04:c4:f9:35:

    73:59:7c:d2:6a:10:a4:87:f9:2a:72:c6:55:f1:d2:

    9e:a7:68:a5:ba:ac:55:f7:9f:c2:59:cb:b0:bb:af:

    79:1a:bc:14:b3:8a:77:8e:b0:cd:59:c3:ce:88:f8:

    02:10:c1:25:de:30:d6:08:07:cc:05:43:c5:27:2f:

    dc:83:29:05:88:81:a9:44:30:3b:f7:c4:c8:fc:b4:

    72:f1

publicExponent: 65537 (0x10001)

privateExponent:

    00:ad:e5:e4:4d:fa:6b:40:88:f5:28:93:15:f0:13:

    1e:9f:90:46:db:65:6d:1b:b3:f5:57:1f:2c:cd:4f:

    f5:3c:bd:da:7f:de:78:89:56:b6:95:ae:18:ea:f5:

    cf:99:23:78:e7:66:a7:90:dd:8d:85:eb:24:c6:e5:

    85:97:65:bd:4b:24:7f:6f:03:99:0e:6d:f6:94:31:

    52:8b:9a:8c:65:5c:ab:fe:bf:ab:3f:27:11:f9:f3:

    79:f3:34:17:8e:d6:1e:d2:3d:80:2a:69:19:d0:0e:

    55:2d:b0:df:d2:d3:a8:fb:5e:ba:cb:8a:c1:f8:80:

    39:00:80:dd:71:59:71:6a:22:f1:bc:57:b7:48:42:

    2c:86:fa:32:fe:dc:b9:b2:04:4a:1a:ff:e2:21:d6:

    4b:98:6e:ad:8d:fb:26:d9:3a:ed:a2:95:4b:37:2f:

    98:f8:c5:49:5c:ca:cb:ed:b0:56:3c:93:6d:bf:66:

    8a:f5:7d:69:3a:ca:12:9b:0e:06:52:7a:f9:6c:4b:

    dd:c9:dd:f0:86:f5:60:ef:ae:ce:1a:a5:33:83:49:

    06:22:84:0e:af:c5:00:e3:cd:fd:93:81:51:8b:74:

    c9:3b:23:23:28:1a:74:bb:1d:36:a3:14:fb:a1:67:

    00:7e:03:ec:2c:50:7a:1b:3f:8b:06:06:42:19:95:

    fe:c5

prime1:

    00:e7:71:39:e7:41:ac:af:79:c9:40:1d:5c:a8:b2:

    bf:66:b9:1c:1a:0f:72:6e:e8:54:86:86:47:fe:55:

    9a:47:7d:45:df:65:e0:3b:32:62:16:e0:38:2e:6a:

    3c:15:f5:2d:aa:5d:29:b8:7d:fe:4e:03:62:c4:ec:

    a3:c7:0e:c9:2b:23:e2:96:18:cb:78:af:ff:e5:80:

    d2:ed:22:bf:3f:27:e3:46:bf:1d:d2:d9:ca:97:7b:

    65:37:17:f6:bf:40:ba:49:30:0c:72:3e:be:82:00:

    09:fd:29:5d:eb:fc:27:ee:68:43:7f:62:94:0b:59:

    4d:d2:7e:48:26:20:4c:1c:0b

prime2:

    00:dc:2e:61:5e:99:5b:db:65:54:26:16:b6:6a:64:

    74:3e:d4:09:bd:c5:59:72:33:ee:3d:4f:6f:91:bc:

    ba:3c:57:22:02:f3:de:5b:60:84:e7:c5:7f:de:f0:

    fd:a4:8c:55:25:71:c9:16:3a:dc:d6:77:ca:31:84:

    76:ce:3f:f7:56:42:b5:ff:bd:9f:70:f0:a8:d5:fa:

    41:63:aa:b0:c9:e0:41:80:63:d8:3c:9a:19:cc:ff:

    31:45:6a:ad:c9:60:ab:d7:1d:13:a9:dd:7e:43:5a:

    d9:d1:aa:6a:2e:1d:19:8c:3d:67:a3:ef:79:09:81:

    31:04:86:af:63:e8:b9:ce:73

exponent1:

    46:8e:2a:f3:c7:fe:a7:e3:fd:a9:31:0a:4d:57:68:

    a8:1d:28:66:fd:6c:8a:49:03:73:9b:3e:19:57:e9:

    57:7f:e6:2c:2b:77:87:34:5d:d8:d1:73:ef:1a:6d:

    c4:d7:e0:9a:fe:19:b8:e7:97:fe:1a:64:22:da:6d:

    37:42:d7:aa:f2:1e:a2:59:5e:b6:25:19:62:d2:b9:

    fa:96:cc:2c:a9:b1:4c:a0:f8:ab:8d:bf:88:1c:93:

    07:8f:a3:a6:3c:4a:4e:03:7a:d7:dd:2e:e0:9c:b8:

    6e:d8:0c:8c:e3:6b:1c:ef:e6:1b:d0:66:87:6b:2b:

    21:4f:64:19:53:61:40:6f

exponent2:

    36:df:84:3a:bc:43:ad:48:f2:90:cf:86:44:bb:a6:

    50:e6:2d:4b:53:3c:b8:7e:82:b8:5a:ec:b6:48:6f:

    ad:8c:15:98:e0:c8:20:c3:cc:3b:aa:f7:f4:4a:e1:

    1b:ba:31:9a:34:62:66:1c:e3:5e:bb:d9:f3:3f:4d:

    10:97:d6:7f:73:fe:c1:ae:b3:66:c5:43:7e:98:70:

    e5:72:eb:be:54:1a:5e:f2:03:39:0f:3a:b0:e1:44:

    99:45:3d:ec:7b:20:38:6b:31:b4:5a:d4:15:db:35:

    7f:d0:55:c8:0a:4e:8c:a9:dd:03:79:32:14:11:53:

    73:0a:51:f9:b7:4d:5f:4b

coefficient:

    31:2b:87:2f:62:16:32:2b:bc:a2:e3:4d:92:3b:b9:

    ce:9d:f5:c5:dc:03:7a:47:fc:b8:8a:ec:3f:be:c7:

    3c:08:d1:c0:80:29:ff:9d:f7:8d:ba:f2:08:2b:e0:

    ae:15:80:0a:22:cc:07:87:4c:f7:06:0f:09:00:bd:

    a0:a2:4d:9e:0d:3a:31:b9:ab:97:c0:b7:b6:ef:24:

    46:d8:d1:20:fd:17:b4:31:8b:c7:c6:72:da:5c:35:

    9f:68:95:2b:65:79:d8:bf:cd:5b:7d:6e:2c:25:60:

    ef:96:1f:91:bb:f4:67:74:3a:c7:23:fd:ea:d1:08:

    41:7d:dd:54:ce:c6:77:eb

writing RSA key

-----BEGIN RSA PRIVATE KEY-----

MIIEowIBAAKCAQEAxw88IpEnzdUAd6e/BKQ8qWy27oOBbd7/NqERWL81KdNhk+Ux

AEKtSSHrCLDvYAurpZYxjLlOAoQR4HOGWMWVoTlCNJ+zPpBLxdFkxEfYnZytxe7i

Lxyk7U/ITG8ZbtJeNq+6I4Ryoi16vnaUMG6DiOYkipWAwAdgJHWEQEH5Y7KsfWS/

Rp3pmA3uvws2P3m0cBjit8G2nh2LjnbaKN1qJfxfllAfl47lS4Jxi1a4fATE+TVz

WXzSahCkh/kqcsZV8dKep2iluqxV95/CWcuwu695GrwUs4p3jrDNWcPOiPgCEMEl

3jDWCAfMBUPFJy/cgykFiIGpRDA798TI/LRy8QIDAQABAoIBAQCt5eRN+mtAiPUo

kxXwEx6fkEbbZW0bs/VXHyzNT/U8vdp/3niJVraVrhjq9c+ZI3jnZqeQ3Y2F6yTG

5YWXZb1LJH9vA5kObfaUMVKLmoxlXKv+v6s/JxH583nzNBeO1h7SPYAqaRnQDlUt

sN/S06j7XrrLisH4gDkAgN1xWXFqIvG8V7dIQiyG+jL+3LmyBEoa/+Ih1kuYbq2N

+ybZOu2ilUs3L5j4xUlcysvtsFY8k22/Zor1fWk6yhKbDgZSevlsS93J3fCG9WDv

rs4apTODSQYihA6vxQDjzf2TgVGLdMk7IyMoGnS7HTajFPuhZwB+A+wsUHobP4sG

BkIZlf7FAoGBAOdxOedBrK95yUAdXKiyv2a5HBoPcm7oVIaGR/5Vmkd9Rd9l4Dsy

YhbgOC5qPBX1LapdKbh9/k4DYsTso8cOySsj4pYYy3iv/+WA0u0ivz8n40a/HdLZ

ypd7ZTcX9r9AukkwDHI+voIACf0pXev8J+5oQ39ilAtZTdJ+SCYgTBwLAoGBANwu

YV6ZW9tlVCYWtmpkdD7UCb3FWXIz7j1Pb5G8ujxXIgLz3ltghOfFf97w/aSMVSVx

yRY63NZ3yjGEds4/91ZCtf+9n3DwqNX6QWOqsMngQYBj2DyaGcz/MUVqrclgq9cd

E6ndfkNa2dGqai4dGYw9Z6PveQmBMQSGr2Pouc5zAoGARo4q88f+p+P9qTEKTVdo

qB0oZv1sikkDc5s+GVfpV3/mLCt3hzRd2NFz7xptxNfgmv4ZuOeX/hpkItptN0LX

qvIeolletiUZYtK5+pbMLKmxTKD4q42/iByTB4+jpjxKTgN6190u4Jy4btgMjONr

HO/mG9Bmh2srIU9kGVNhQG8CgYA234Q6vEOtSPKQz4ZEu6ZQ5i1LUzy4foK4Wuy2

SG+tjBWY4Mggw8w7qvf0SuEbujGaNGJmHONeu9nzP00Ql9Z/c/7BrrNmxUN+mHDl

cuu+VBpe8gM5Dzqw4USZRT3seyA4azG0WtQV2zV/0FXICk6Mqd0DeTIUEVNzClH5

t01fSwKBgDErhy9iFjIrvKLjTZI7uc6d9cXcA3pH/LiK7D++xzwI0cCAKf+d9426

8ggr4K4VgAoizAeHTPcGDwkAvaCiTZ4NOjG5q5fAt7bvJEbY0SD9F7Qxi8fGctpc

NZ9olStledi/zVt9biwlYO+WH5G79Gd0Oscj/erRCEF93VTOxnfr

-----END RSA PRIVATE KEY-----



   1.4 개인키로부터 공개키 생성

   # openssl rsa -in <Generated Private Key> -pubout -out <Public Key File Name to Generate>


$ openssl rsa -in private_password.key -pubout -out public_password.key

Enter pass phrase for private_password.key:

writing RSA key

$ ls | grep public_pasword.key   

public_password.key

$ cat ./public_password.key

-----BEGIN PUBLIC KEY-----

MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxw88IpEnzdUAd6e/BKQ8

qWy27oOBbd7/NqERWL81KdNhk+UxAEKtSSHrCLDvYAurpZYxjLlOAoQR4HOGWMWV

oTlCNJ+zPpBLxdFkxEfYnZytxe7iLxyk7U/ITG8ZbtJeNq+6I4Ryoi16vnaUMG6D

iOYkipWAwAdgJHWEQEH5Y7KsfWS/Rp3pmA3uvws2P3m0cBjit8G2nh2LjnbaKN1q

JfxfllAfl47lS4Jxi1a4fATE+TVzWXzSahCkh/kqcsZV8dKep2iluqxV95/CWcuw

u695GrwUs4p3jrDNWcPOiPgCEMEl3jDWCAfMBUPFJy/cgykFiIGpRDA798TI/LRy

8QIDAQAB

-----END PUBLIC KEY-----



2. 서명 요청 파일(CSR : 인증 서명 요청) 파일 생성 


   2.1 개인키를 이용한 CSR 파일 생성

   # openssl req -new -key <Private Key> -out <CSR File Name>


$ openssl req -new -key private_password.key -out cert.csr    

Enter pass phrase for private_password.key:

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) [AU]:KR

State or Province Name (full name) [Some-State]:Seoul

Locality Name (eg, city) []:Junggu

Organization Name (eg, company) [Internet Widgits Pty Ltd]:StudyLang

Organizational Unit Name (eg, section) []:RnD

Common Name (e.g. server FQDN or YOUR name) []:AProgrammer

Email Address []:aprog@thiscompany.com


Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

$ ls | grep csr

cert.csr



   2.2 개인키 생성과 동시에 CSR 파일 생성

   # openssl req -new -out <CSR File Name> -keyout <Private Key File Name> -newkey rsa:<Key Size>


$ openssl req -new -out cert_with_new_privkey.csr -keyout privkey_with_new_cert.key -newkey rsa:2048 

Generating a 2048 bit RSA private key

..............................................................+++

............................................................................................+++

writing new private key to 'privkey_with_new_cert.key'

Enter PEM pass phrase:

Verifying - Enter PEM pass phrase:

-----

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) [AU]:kr

State or Province Name (full name) [Some-State]:Seoul

Locality Name (eg, city) []:Junggu

Organization Name (eg, company) [Internet Widgits Pty Ltd]:ThisCompany

Organizational Unit Name (eg, section) []:

Common Name (e.g. server FQDN or YOUR name) []:AProgrammer

Email Address []:mail@thiscompany.com


Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

$ ls | grep privkey

cert_with_new_privkey.csr

privkey_with_new_cert.key


 

   2.3 CSR 파일 정보 확인

   # openssl req -text -in <CSR File Name> -noout


$ openssl req -text -in cert_with_new_privkey.csr

Certificate Request:

    Data:

        Version: 0 (0x0)

        Subject: C=kr, ST=Seoul, L=Junggu, O=ThisCompany, CN=AProgrammer/emailAddress=mail@thiscompany.com

        Subject Public Key Info:

            Public Key Algorithm: rsaEncryption

                Public-Key: (2048 bit)

                Modulus:

                    00:9f:99:b0:94:17:6e:39:64:cc:86:da:e6:05:d6:

                    77:70:04:f9:3c:58:6f:c9:4b:9e:19:45:db:a6:fa:

                    6b:e5:63:db:eb:88:a2:14:53:e6:5a:ab:cc:8e:48:

                    d7:cf:08:37:06:06:33:19:ee:b1:88:6e:ac:74:24:

                    d2:46:0e:fb:bb:ea:3f:75:a5:c6:99:29:35:85:aa:

                    1e:1d:5d:95:93:bf:9b:2f:e9:54:f3:0c:a9:b9:3e:

                    12:d5:1e:fb:24:7d:6d:06:5c:06:ae:6d:41:66:74:

                    12:20:2a:d2:f7:67:f8:02:29:7f:aa:94:4b:ea:6a:

                    8c:87:9b:07:4c:1c:66:45:4b:07:54:ba:5e:26:e0:

                    7b:92:5c:0e:ec:68:fb:c0:a4:2e:f4:e8:51:9e:c0:

                    b8:bb:86:86:7b:b8:9a:32:8e:18:0a:bd:5d:df:01:

                    ae:6f:6e:2d:42:96:d4:8a:71:3c:ef:6d:c4:0c:60:

                    5f:a1:90:29:63:16:0c:b9:6b:c3:02:a4:3c:8c:f9:

                    97:c6:a0:42:1b:87:28:ae:ee:f9:c0:43:d2:47:9a:

                    73:35:01:ef:72:19:da:a7:7b:c6:0a:dc:f3:e6:cb:

                    8b:59:72:33:96:8c:02:e6:c5:9f:d5:20:4c:1c:f2:

                    98:9a:54:24:fa:1f:83:a5:78:c5:7d:fe:92:06:6a:

                    d1:a1

                Exponent: 65537 (0x10001)

        Attributes:

            a0:00

    Signature Algorithm: sha256WithRSAEncryption

         13:a6:b5:0a:a5:4e:0e:31:af:60:a0:4f:c8:bc:9d:e6:de:63:

         e7:18:45:4b:c5:7d:bd:7b:82:84:95:a1:20:de:b5:fb:e7:a6:

         11:7b:ed:bf:6b:03:83:0d:05:b5:40:3f:39:a1:a8:ce:5b:3f:

         f3:98:a3:e3:7e:51:38:cd:d4:b1:4e:55:d7:3e:eb:60:da:65:

         43:6a:6a:e9:f1:f6:e4:4e:31:7d:c4:bf:a6:e9:3c:d1:25:61:

         c1:0e:be:3e:32:3a:09:8a:73:9b:90:56:2a:06:6e:a3:31:29:

         12:27:ba:16:cb:ff:7d:37:0b:35:a3:5c:d9:22:1b:53:9b:33:

         81:cf:37:b7:6f:ff:d7:40:bb:56:d5:8f:7d:6b:2b:09:a0:7d:

         fd:23:60:17:64:31:49:19:be:45:e7:7d:95:b2:55:5f:4b:d5:

         1c:06:42:b0:28:e7:1c:29:52:bb:6a:74:2e:d0:75:4c:2f:00:

         54:d6:36:87:fc:67:b6:05:3f:c1:d8:12:f2:45:3c:81:77:33:

         9f:82:f5:eb:35:0e:68:af:5b:d1:ba:43:b5:3f:63:fa:27:82:

         4a:1c:56:d6:1e:7b:d1:85:e9:db:ca:5b:b4:26:64:95:60:95:

         7e:5f:a6:42:3a:02:d6:16:5a:3a:a3:21:fc:43:61:af:9f:50:

         4c:a9:22:7f

-----BEGIN CERTIFICATE REQUEST-----

MIICxDCCAawCAQAwfzELMAkGA1UEBhMCa3IxDjAMBgNVBAgMBVNlb3VsMQ8wDQYD

VQQHDAZKdW5nZ3UxFDASBgNVBAoMC1RoaXNDb21wYW55MRQwEgYDVQQDDAtBUHJv

Z3JhbW1lcjEjMCEGCSqGSIb3DQEJARYUbWFpbEB0aGlzY29tcGFueS5jb20wggEi

MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCfmbCUF245ZMyG2uYF1ndwBPk8

WG/JS54ZRdum+mvlY9vriKIUU+Zaq8yOSNfPCDcGBjMZ7rGIbqx0JNJGDvu76j91

pcaZKTWFqh4dXZWTv5sv6VTzDKm5PhLVHvskfW0GXAaubUFmdBIgKtL3Z/gCKX+q

lEvqaoyHmwdMHGZFSwdUul4m4HuSXA7saPvApC706FGewLi7hoZ7uJoyjhgKvV3f

Aa5vbi1CltSKcTzvbcQMYF+hkCljFgy5a8MCpDyM+ZfGoEIbhyiu7vnAQ9JHmnM1

Ae9yGdqne8YK3PPmy4tZcjOWjALmxZ/VIEwc8piaVCT6H4OleMV9/pIGatGhAgMB

AAGgADANBgkqhkiG9w0BAQsFAAOCAQEAE6a1CqVODjGvYKBPyLyd5t5j5xhFS8V9

vXuChJWhIN61++emEXvtv2sDgw0FtUA/OaGozls/85ij435ROM3UsU5V1z7rYNpl

Q2pq6fH25E4xfcS/puk80SVhwQ6+PjI6CYpzm5BWKgZuozEpEie6Fsv/fTcLNaNc

2SIbU5szgc83t2//10C7VtWPfWsrCaB9/SNgF2QxSRm+Red9lbJVX0vVHAZCsCjn

HClSu2p0LtB1TC8AVNY2h/xntgU/wdgS8kU8gXczn4L16zUOaK9b0bpDtT9j+ieC

ShxW1h570YXp28pbtCZklWCVfl+mQjoC1hZaOqMh/ENhr59QTKkifw==

-----END CERTIFICATE REQUEST-----



3. 인증서 생성


   3.1 Self Sign 인증서


      3.1.1 CSR 파일을 이용한 인증서 생성

  # openssl x509 -req -days <Number of Days> -in <CSR File Name> -signkey <Private Key> -out <Output File Name>


$ openssl x509 -req -days 365 -in ./cert.csr -signkey ./private_password.key -out cert.crt

Signature ok

subject=/C=KR/ST=Seoul/L=Junggu/O=StudyLang/OU=RnD/CN=AProgrammer/emailAddress=aprog@thiscompany.com

Getting Private key

Enter pass phrase for ./private_password.key:

$ ls | grep cert.crt

cert.crt



      3.1.2 CSR 파일 없이 인증서 생성(CSR 즉시 생성하여 사용함, Private Key가 있어야 함)

      # openssl -req -new -x509 -days <Number of Days> -key <Private Key> -out <Output File Name>


$ openssl req -new -x509 -days 365 -key ./private_password.key -out cert_no_csr.crt

Enter pass phrase for ./private_password.key:

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) [AU]:KR

State or Province Name (full name) [Some-State]:Seoul

Locality Name (eg, city) []:Junggu

Organization Name (eg, company) [Internet Widgits Pty Ltd]:ThisCompany

Organizational Unit Name (eg, section) []:RnD

Common Name (e.g. server FQDN or YOUR name) []:AProgrammer

Email Address []:thisemail@anywhere.com

$ ls | grep cert_no_csr

cert_no_csr.crt

$ cat ./cert_no_csr.crt

-----BEGIN CERTIFICATE-----

MIID8zCCAtugAwIBAgIJAKYcr5/Y+EbcMA0GCSqGSIb3DQEBCwUAMIGPMQswCQYD

VQQGEwJLUjEOMAwGA1UECAwFU2VvdWwxDzANBgNVBAcMBkp1bmdndTEUMBIGA1UE

CgwLVGhpc0NvbXBhbnkxDDAKBgNVBAsMA1JuRDEUMBIGA1UEAwwLQVByb2dyYW1t

ZXIxJTAjBgkqhkiG9w0BCQEWFnRoaXNlbWFpbEBhbnl3aGVyZS5jb20wHhcNMTgw

MTAyMjM1MDE3WhcNMTkwMTAyMjM1MDE3WjCBjzELMAkGA1UEBhMCS1IxDjAMBgNV

BAgMBVNlb3VsMQ8wDQYDVQQHDAZKdW5nZ3UxFDASBgNVBAoMC1RoaXNDb21wYW55

MQwwCgYDVQQLDANSbkQxFDASBgNVBAMMC0FQcm9ncmFtbWVyMSUwIwYJKoZIhvcN

AQkBFhZ0aGlzZW1haWxAYW55d2hlcmUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOC

AQ8AMIIBCgKCAQEAxw88IpEnzdUAd6e/BKQ8qWy27oOBbd7/NqERWL81KdNhk+Ux

AEKtSSHrCLDvYAurpZYxjLlOAoQR4HOGWMWVoTlCNJ+zPpBLxdFkxEfYnZytxe7i

Lxyk7U/ITG8ZbtJeNq+6I4Ryoi16vnaUMG6DiOYkipWAwAdgJHWEQEH5Y7KsfWS/

Rp3pmA3uvws2P3m0cBjit8G2nh2LjnbaKN1qJfxfllAfl47lS4Jxi1a4fATE+TVz

WXzSahCkh/kqcsZV8dKep2iluqxV95/CWcuwu695GrwUs4p3jrDNWcPOiPgCEMEl

3jDWCAfMBUPFJy/cgykFiIGpRDA798TI/LRy8QIDAQABo1AwTjAdBgNVHQ4EFgQU

foXzBv2lgcml/BiFLSIOPVD480swHwYDVR0jBBgwFoAUfoXzBv2lgcml/BiFLSIO

PVD480swDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEANeoIdSqDZPoC

k0DSICKps7DoRRptkfrJRWanUanyHMcYNqRCzlyPTrv3ASxyQ3AOIwN7imweQAl4

G9pef1NOUGbWt7V1iRsvQdhXgS6mAtNAb8PDkNvDzPVoJBAZAJYLjWVw43u+gAj5

0klHs2AXFS9+wsIMoND3W49w31UJt/VkYC+b7VUACnwNRxNVG1gDKL7IvT15tlnp

8hjEyX9aSavKZefIVwVXJfyAbI58Jz82IVZtbrlP01Mc8qk97I8HEwhybCkfMYcE

VzTFAfaWxI5mwXkukKG0QCZ8OGpsKFy02mCnQpseeLItScI+OAAcj+bt2+J7AhWp

VdHsFpJweA==

-----END CERTIFICATE-----


 

   3.2 CA(Certificate Authorit)


      3.1.1 별 가이드 이용


  3.1.2 CA List

     * https://letsencrypt.org/ : 무료


   3.2 인증서 파일 정보 확인

   # openssl x509 -text -in <File name> -noout(optional)


$ openssl x509 -text -in ./cert.crt

Certificate:

    Data:

        Version: 1 (0x0)

        Serial Number: 9822855223582509766 (0x8851cac839b9cac6)

    Signature Algorithm: sha256WithRSAEncryption

        Issuer: C=KR, ST=Seoul, L=Junggu, O=StudyLang, OU=RnD, CN=AProgrammer/emailAddress=aprog@thiscompany.com

        Validity

            Not Before: Jan  2 23:41:05 2018 GMT

            Not After : Jan  2 23:41:05 2019 GMT

        Subject: C=KR, ST=Seoul, L=Junggu, O=StudyLang, OU=RnD, CN=AProgrammer/emailAddress=aprog@thiscompany.com

        Subject Public Key Info:

            Public Key Algorithm: rsaEncryption

                Public-Key: (2048 bit)

                Modulus:

                    00:c7:0f:3c:22:91:27:cd:d5:00:77:a7:bf:04:a4:

                    3c:a9:6c:b6:ee:83:81:6d:de:ff:36:a1:11:58:bf:

                    35:29:d3:61:93:e5:31:00:42:ad:49:21:eb:08:b0:

                    ef:60:0b:ab:a5:96:31:8c:b9:4e:02:84:11:e0:73:

                    86:58:c5:95:a1:39:42:34:9f:b3:3e:90:4b:c5:d1:

                    64:c4:47:d8:9d:9c:ad:c5:ee:e2:2f:1c:a4:ed:4f:

                    c8:4c:6f:19:6e:d2:5e:36:af:ba:23:84:72:a2:2d:

                    7a:be:76:94:30:6e:83:88:e6:24:8a:95:80:c0:07:

                    60:24:75:84:40:41:f9:63:b2:ac:7d:64:bf:46:9d:

                    e9:98:0d:ee:bf:0b:36:3f:79:b4:70:18:e2:b7:c1:

                    b6:9e:1d:8b:8e:76:da:28:dd:6a:25:fc:5f:96:50:

                    1f:97:8e:e5:4b:82:71:8b:56:b8:7c:04:c4:f9:35:

                    73:59:7c:d2:6a:10:a4:87:f9:2a:72:c6:55:f1:d2:

                    9e:a7:68:a5:ba:ac:55:f7:9f:c2:59:cb:b0:bb:af:

                    79:1a:bc:14:b3:8a:77:8e:b0:cd:59:c3:ce:88:f8:

                    02:10:c1:25:de:30:d6:08:07:cc:05:43:c5:27:2f:

                    dc:83:29:05:88:81:a9:44:30:3b:f7:c4:c8:fc:b4:

                    72:f1

                Exponent: 65537 (0x10001)

    Signature Algorithm: sha256WithRSAEncryption

         5e:dd:60:47:29:54:25:44:1d:9b:83:d5:31:57:b9:34:a9:af:

         a3:cb:c3:b2:0c:62:bb:b4:66:d0:8e:0f:f6:b5:cd:86:60:91:

         66:94:99:28:eb:fb:c2:08:f3:c5:4e:d0:29:e2:fe:60:79:ea:

         cd:2c:2c:6a:ce:4f:ce:1c:11:c7:21:c2:33:6d:b0:b5:65:e7:

         ae:e6:9a:e4:f5:e9:a4:5e:ab:8c:80:0f:61:56:95:3e:33:5b:

         36:73:9d:01:bb:a7:f1:8e:1a:99:4f:0f:b8:ff:b8:79:a3:c8:

         1e:8c:41:46:67:c6:30:d5:d3:52:76:04:9b:af:2d:9a:4e:6b:

         90:2f:86:7c:22:28:13:5e:81:1c:f8:f5:0f:53:65:c1:b8:a4:

         a4:45:c0:4c:7b:b7:99:20:4b:5d:36:bc:bf:f3:5a:21:93:60:

         e0:b2:e4:1c:45:73:b6:b8:b0:2a:39:38:3c:da:da:cf:f3:25:

         65:59:aa:a4:ef:bb:3b:2d:47:1a:75:3d:43:2c:ad:06:e7:4d:

         db:d4:5a:d3:76:5b:e8:7f:25:4c:cd:20:c5:a4:8a:d4:ae:b2:

         78:fc:4b:8b:88:2f:d4:87:7b:bb:eb:0c:a5:a2:b4:ac:b5:14:

         10:10:ae:3d:c2:c5:4d:1f:cc:39:f3:1a:64:fa:2d:e6:47:d4:

         9b:49:d3:7a

-----BEGIN CERTIFICATE-----

MIIDljCCAn4CCQCIUcrIObnKxjANBgkqhkiG9w0BAQsFADCBjDELMAkGA1UEBhMC

S1IxDjAMBgNVBAgMBVNlb3VsMQ8wDQYDVQQHDAZKdW5nZ3UxEjAQBgNVBAoMCVN0

dWR5TGFuZzEMMAoGA1UECwwDUm5EMRQwEgYDVQQDDAtBUHJvZ3JhbW1lcjEkMCIG

CSqGSIb3DQEJARYVYXByb2dAdGhpc2NvbXBhbnkuY29tMB4XDTE4MDEwMjIzNDEw

NVoXDTE5MDEwMjIzNDEwNVowgYwxCzAJBgNVBAYTAktSMQ4wDAYDVQQIDAVTZW91

bDEPMA0GA1UEBwwGSnVuZ2d1MRIwEAYDVQQKDAlTdHVkeUxhbmcxDDAKBgNVBAsM

A1JuRDEUMBIGA1UEAwwLQVByb2dyYW1tZXIxJDAiBgkqhkiG9w0BCQEWFWFwcm9n

QHRoaXNjb21wYW55LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB

AMcPPCKRJ83VAHenvwSkPKlstu6DgW3e/zahEVi/NSnTYZPlMQBCrUkh6wiw72AL

q6WWMYy5TgKEEeBzhljFlaE5QjSfsz6QS8XRZMRH2J2crcXu4i8cpO1PyExvGW7S

XjavuiOEcqIter52lDBug4jmJIqVgMAHYCR1hEBB+WOyrH1kv0ad6ZgN7r8LNj95

tHAY4rfBtp4di4522ijdaiX8X5ZQH5eO5UuCcYtWuHwExPk1c1l80moQpIf5KnLG

VfHSnqdopbqsVfefwlnLsLuveRq8FLOKd46wzVnDzoj4AhDBJd4w1ggHzAVDxScv

3IMpBYiBqUQwO/fEyPy0cvECAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAXt1gRylU

JUQdm4PVMVe5NKmvo8vDsgxiu7Rm0I4P9rXNhmCRZpSZKOv7wgjzxU7QKeL+YHnq

zSwsas5PzhwRxyHCM22wtWXnruaa5PXppF6rjIAPYVaVPjNbNnOdAbun8Y4amU8P

uP+4eaPIHoxBRmfGMNXTUnYEm68tmk5rkC+GfCIoE16BHPj1D1NlwbikpEXATHu3

mSBLXTa8v/NaIZNg4LLkHEVztriwKjk4PNraz/MlZVmqpO+7Oy1HGnU9QyytBudN

29Ra03Zb6H8lTM0gxaSK1K6yePxLi4gv1Id7u+sMpaK0rLUUEBCuPcLFTR/MOfMa

ZPot5kfUm0nTeg==

-----END CERTIFICATE-----






변환 옵션

   1. PEM -> DER 

   # openssl x509 -inform PEM -in <Input PEM File Name> -outform DER -out <Output DER File Name>   

   2. DER -> PEM 

   # openssl x509 -inform DER -in <Input DER File Name> -output PEM -out <Output PEM File Name>

   3. PEM -> PKCS#12(PFX) 변환

   # openssl pkcs12 -in <Input PFX File Name> -out <Output PEM File Name> -nodes

   




정보 출처

https://blog.hangadac.com

Ubuntu 16.04.2se Man Page

반응형
반응형









 커피에 이은 가칭 "솔로일때 해보자" 프로젝트... 두번째의 취미 생활을 시작했다. 목공!

 사실 따로 주문 제작하는 것과 가격이 얼마나 차이가 날지는 생각 안해봤다. 하지만 내가 원하는 것을 내가 만들 수 있으며 어려운 것은 전문가에 의해 도움을 받을 수 있는 방법이 있어서 어렵지 않게 시도를 하게 되었다.


 첫번째는 개인 사물함.. 보통 목공방에서 처음 만드는 것은 목공방에서 사용할 개인 사물함을 만드는 것인데, 사장님께 부탁해서 집에서 사용할 수 있도록 약간의 설계상의 개조를 부탁드렸다. 기존 사물함과의 변경점은 아래에서 언급하겠다.



  일단 완성품은 이렇다. 처음에는 배워야 하는 몇가지 때문에 만드는 것이라서 그냥 기본적인 결과물이 나오겠구나 하고 생각했었는데, 기대 외로 상당히 양질의 결과물이 나왔고, 모양도 이쁘며, 집에서 아주 유용히 사용할 수 있을 것 같다.





손잡이 부분... 손잡이를 만드는데, 이걸 어떻게 만들까 처음엔 그랬지만, 드릴과 직쏘, 트리머로 손 쉽게 만들었다. 다른 라운딩은 샌더로 했는데 트이 부분은 트리머로 간단히 하다 보니, 다른부분도 트리머로 후딱 할껄... 하는 아쉬움도 들었다. 사실 샌더로 라운딩 처리를 하는데 처음하다 보니 생각처럼 되지 않아서, 어느 부분은 샌딩이 더 되고, 어느 부분은 덜되고 해서, 그걸 조정하기 위해 다시 만지다 보면 울퉁 불퉁 삐뚤 빼뚤해지는 경우가 많았는데, 트리머로 하니 간단하고, 빠르고, 깔끔하게 끝난것 같다.




 위에 샌더로 라운딩 처리를 하다 보니, 참 잘 안되었다고 말했고... 엄격한 사실이지만... 사실...조금은 라운딩이 마음에 잘 들게 된 부분은 몇부분이 있다.ㅋㅋㅋ 이런건 좀 뿌듯하다 ㅋㅋㅋ




 공방에 처음 가서 만드는 개인 사물함은 보통 하판은 고정이다. 하지만 이 개인 사물함은 집에서 특정 목적으로 사용할 목적으로 만들어서 하판은 분리가 가능하게 만들었다. 원래는 옆에 구멍을 내서 내부의 찍꺼기를 손 쉽게 밖으로 배출 가능하도록 만들고 싶었었지만, 더 간단하게 아얘 하판이 분리 되어 구석의 이물질 까지도 쉽게 배출 할 수 있도록 되었다. 손잡이도 트리머로 쉽게 만들었지만 이 부분은 사장님께서 마지막에 직접 해주셨다.




 손잡이의 트리머로 한 라운딩 처리... 트리머로 라운딩을 시도할 때에 살짝 머뭇 거렸더니 나무가 타버렸다. 아... 아쉽다 했지만 탄 부분이 의외로 운치있게 타서 마음에 드는부분이기도 하다.




 피스를 조금 깊숙히 박고 마무리 하는 법을 처음에 연습으로 시작했는데, 개인 사물함을 만들때에 사용해봤는데 감쪽같고 이쁘다.








마지막 완성품...


가입비는 1년치를 내지만, 목재의 사용비는 따로 지불해야 한다. 3만원 목재비를 지불하고, 만든 첫 사물함은 정말 마음에 들었다.

사물함을 만들때 사장님이 이렇게 이렇게 만들어라 해서 만드는 것이 아닌 개인의 원하는 바를 사장님께 말씀드리면 사장님께서 그것에 대해서 도움을 주신다. 나는 아이디어와 원하는 설계를 가지면 사장님의 전문성으로 나의 부족함에 보태주시고, 나는 채워짐으로 목공을 시작하면 된다. 다음번에는 내가 원하던 두가지중에 첫번째를 시도해야겠다. 그것이 무엇인지는 완성도가 높으면 여기에 포스팅 되겠지... 하지만 한 두달 안에는 어려울 것같다...


이번에 방문한 목공방은 수원 영통에 있는 헤펠레 영통 목공방이다.

목공방이 딱딱하기만 하고 어려울 것 같았지만 정말 좋은 분위기에서 사람들도 정말 친절하고 분위기도 좋고,

사장님도 딱딱한 커리큘럼만 따라가기 보다는 원하는 것을 해주셔서 정말 좋은 것 같다.

해당 포스트 : [목공] 목공방 취미 회원 방문 첫날 방문 소감 . . . (http://onestepcloser.tistory.com/79)




반응형

+ Recent posts