USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
ะ’ ์ด์ „ ๊ธฐ์‚ฌ ์ค‘ ํ•˜๋‚˜ ์šฐ๋ฆฌ๋Š” ํšŒ์‚ฌ์˜ ๊ธฐ์—… ํฌํ„ธ์—์„œ ์ด์ค‘ ์ธ์ฆ์˜ ์ค‘์š”์„ฑ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง€๋‚œ๋ฒˆ์—๋Š” IIS ์›น ์„œ๋ฒ„์—์„œ ๋ณด์•ˆ ์ธ์ฆ์„ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‹œ์—ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๋Œ“๊ธ€์—์„œ ์šฐ๋ฆฌ๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ Linux์šฉ ์›น ์„œ๋ฒ„์ธ nginx ๋ฐ Apache์— ๋Œ€ํ•œ ์ง€์นจ์„ ์ž‘์„ฑํ•ด ๋‹ฌ๋ผ๋Š” ์š”์ฒญ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

๋‹น์‹ ์ด ๋ฌผ์—ˆ์Šต๋‹ˆ๋‹ค โ€“ ์šฐ๋ฆฌ๋Š” ์ผ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋ ค๋ฉด ๋ฌด์—‡์ด ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ?

  • ๋ชจ๋“  ์ตœ์‹  Linux ๋ฐฐํฌํŒ. MX Linux 18.2_x64์—์„œ ํ…Œ์ŠคํŠธ ์„ค์ •์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์ด๊ฒƒ์€ ์„œ๋ฒ„ ๋ฐฐํฌ๋Š” ์•„๋‹ˆ์ง€๋งŒ ๋ฐ๋น„์•ˆ์—์„œ๋Š” ์•„๋ฌด๋Ÿฐ ์ฐจ์ด๊ฐ€ ์—†์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฐฐํฌํŒ์˜ ๊ฒฝ์šฐ ๊ตฌ์„ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฒฝ๋กœ๊ฐ€ ์•ฝ๊ฐ„ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ† ํฐ. ์šฐ๋ฆฌ๋Š” ๊ณ„์† ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค ๋ฃจํ† ์ผ„ EDS PKI, ์ด๋Š” ๊ธฐ์—…์šฉ ์†๋„ ํŠน์„ฑ ์ธก๋ฉด์—์„œ ์ด์ƒ์ ์ž…๋‹ˆ๋‹ค.
  • Linux์—์„œ ํ† ํฐ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋‹ค์Œ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    libccid libpcsclite1 pcscd pcc-๋„๊ตฌ opensc

USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ธ์ฆ์„œ ๋ฐœ๊ธ‰

์ด์ „ ๊ธฐ์‚ฌ์—์„œ๋Š” ์„œ๋ฒ„ ๋ฐ ํด๋ผ์ด์–ธํŠธ ์ธ์ฆ์„œ๊ฐ€ Microsoft CA๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐœ๊ธ‰๋œ๋‹ค๋Š” ์‚ฌ์‹ค์— ์˜์กดํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๋Š” Linux์—์„œ ๋ชจ๋“  ๊ฒƒ์„ ์„ค์ •ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ Linux๋ฅผ ๋– ๋‚˜์ง€ ์•Š๊ณ ๋„ ์ด๋Ÿฌํ•œ ์ธ์ฆ์„œ๋ฅผ ๋ฐœ๊ธ‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์ฒด ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋„ ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.
CA๋กœ XCA๋ฅผ ์‚ฌ์šฉํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค(https://hohnstaedt.de/xca/)๋Š” ๋ชจ๋“  ์ตœ์‹  Linux ๋ฐฐํฌํŒ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. XCA์—์„œ ์ˆ˜ํ–‰ํ•  ๋ชจ๋“  ์ž‘์—…์€ OpenSSL ๋ฐ pkcs11-tool ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ช…๋ น์ค„ ๋ชจ๋“œ์—์„œ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋” ๋‹จ์ˆœํ•˜๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ์ด์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ

  1. ์„ค์น˜ํ•˜๋‹ค:
    $ apt-get install xca
  2. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ๋‹ค์Œ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค:
    $ xca
  3. CA์šฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค - /root/CA.xdb
    ๊ด€๋ฆฌ์ž๋งŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ํด๋”์— ์ธ์ฆ ๊ธฐ๊ด€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  ์ธ์ฆ์„œ์— ์„œ๋ช…ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฃจํŠธ ์ธ์ฆ์„œ์˜ ๊ฐœ์ธ ํ‚ค๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

ํ‚ค ๋ฐ ๋ฃจํŠธ CA ์ธ์ฆ์„œ ์ƒ์„ฑ

๊ณต๊ฐœ ํ‚ค ์ธํ”„๋ผ(PKI)๋Š” ๊ณ„์ธต์  ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์‹œ์Šคํ…œ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ฃจํŠธ ์ธ์ฆ ๊ธฐ๊ด€ ๋˜๋Š” ๋ฃจํŠธ CA์ž…๋‹ˆ๋‹ค. ์ธ์ฆ์„œ๋ฅผ ๋จผ์ € ์ƒ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  1. CA์— ๋Œ€ํ•œ RSA-2048 ๊ฐœ์ธ ํ‚ค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด ํƒญ์—์„œ ๊ฐœ์ธ ํ‚ค ์ค‘์š”ํ•˜๋‹ค ์ƒˆ ํ‚ค ๊ทธ๋ฆฌ๊ณ  ์ ์ ˆํ•œ ์œ ํ˜•์„ ์„ ํƒํ•˜์„ธ์š”.
  2. ์ƒˆ ํ‚ค ์Œ์˜ ์ด๋ฆ„์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ๊ทธ๊ฒƒ์„ CA ํ‚ค๋ผ๊ณ  ๋ถˆ๋ €์Šต๋‹ˆ๋‹ค.
  3. ์ƒ์„ฑ๋œ ํ‚ค ์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ CA ์ธ์ฆ์„œ ์ž์ฒด๋ฅผ ๋ฐœ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด ํƒญ์œผ๋กœ ์ด๋™ํ•˜์„ธ์š”. ์ธ์ฆ์„œ ๋ฐ€์–ด ๋„ฃ๋‹ค ์ƒˆ ์ธ์ฆ์„œ.
  4. ๊ผญ ์„ ํƒํ•˜์„ธ์š” SHA-256, SHA-1์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋” ์ด์ƒ ์•ˆ์ „ํ•˜๋‹ค๊ณ  ๊ฐ„์ฃผ๋  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  5. ๋ฐ˜๋“œ์‹œ ํ…œํ”Œ๋ฆฟ์œผ๋กœ ์„ ํƒํ•˜์„ธ์š” [๊ธฐ๋ณธ๊ฐ’]CA. ํด๋ฆญํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š” ๋ชจ๋‘ ์ ์šฉ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ํ…œํ”Œ๋ฆฟ์ด ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  6. ํƒญ ์ œ๋ชฉ ํ‚ค ์Œ์„ ์„ ํƒํ•˜์„ธ์š”. ์—ฌ๊ธฐ์—์„œ ์ธ์ฆ์„œ์˜ ๋ชจ๋“  ์ฃผ์š” ํ•„๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

ํ‚ค ๋ฐ https ์„œ๋ฒ„ ์ธ์ฆ์„œ ์ƒ์„ฑ

  1. ๋น„์Šทํ•œ ๋ฐฉ์‹์œผ๋กœ ์„œ๋ฒ„์— ๋Œ€ํ•œ RSA-2048 ๊ฐœ์ธ ํ‚ค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ์ด๋ฅผ ์„œ๋ฒ„ ํ‚ค๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.
  2. ์ธ์ฆ์„œ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์„œ๋ฒ„ ์ธ์ฆ์„œ๊ฐ€ CA ์ธ์ฆ์„œ๋กœ ์„œ๋ช…๋˜์–ด์•ผ ํ•จ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. ์„ ํƒํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š” SHA-256.
  4. ํ…œํ”Œ๋ฆฟ์œผ๋กœ ์„ ํƒํ•œ๋‹ค [๊ธฐ๋ณธ๊ฐ’] HTTPS_์„œ๋ฒ„. ํด๋ฆญ ๋ชจ๋‘ ์ ์šฉ.
  5. ๊ทธ๋Ÿฐ ๋‹ค์Œ ํƒญ์—์„œ ์ œ๋ชฉ ํ‚ค๋ฅผ ์„ ํƒํ•˜๊ณ  ํ•„์ˆ˜ ํ•„๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.

USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ํ‚ค ๋ฐ ์ธ์ฆ์„œ ์ƒ์„ฑ

  1. ์‚ฌ์šฉ์ž์˜ ๊ฐœ์ธ ํ‚ค๋Š” ํ† ํฐ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋‹น์‚ฌ ์›น์‚ฌ์ดํŠธ์—์„œ PKCS#11 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ธ๊ธฐ ์žˆ๋Š” ๋ฐฐํฌํŒ์˜ ๊ฒฝ์šฐ, ์—ฌ๊ธฐ์— ์žˆ๋Š” ๊ธฐ์„ฑ ํŒจํ‚ค์ง€๋ฅผ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. https://www.rutoken.ru/support/download/pkcs/. ๋˜ํ•œ SDK์—์„œ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” arm64, armv7el, armv7hf, e2k, mipso32el์šฉ ์–ด์…ˆ๋ธ”๋ฆฌ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. https://www.rutoken.ru/developers/sdk/. Linux์šฉ ์–ด์…ˆ๋ธ”๋ฆฌ ์™ธ์—๋„ macOS, freebsd ๋ฐ android์šฉ ์–ด์…ˆ๋ธ”๋ฆฌ๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. XCA์— ์ƒˆ PKCS#11 ๊ณต๊ธ‰์ž๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒํ•˜๋ ค๋ฉด ๋ฉ”๋‰ด๋กœ ์ด๋™ํ•˜์‹ญ์‹œ์˜ค ์˜ต์…˜ ํƒญ์œผ๋กœ PKCS#11 ๊ณต๊ธ‰์ž.
  3. ์šฐ๋ฆฌ๋Š” ๋ˆ„๋ฆ…๋‹ˆ๋‹ค ์ถ”๊ฐ€ PKCS#11 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฒฝ๋กœ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ œ ๊ฒฝ์šฐ์—๋Š” usrlibrtpkcs11ecp.so์ž…๋‹ˆ๋‹ค.
  4. ํ˜•์‹ํ™”๋œ Rutoken EDS PKI ํ† ํฐ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. rtAdmin ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋‹ค์šด๋กœ๋“œ - https://dev.rutoken.ru/pages/viewpage.action?pageId=7995615
  5. ์šฐ๋ฆฌ๋Š”
    $ rtAdmin -f -q -z /usr/lib/librtpkcs11ecp.so -u <PIN-ะบะพะด ะฟะพะปัŒะทะพะฒะฐั‚ะตะปั>
  6. Rutoken EDS PKI์˜ RSA-2048 ํ‚ค๋ฅผ ํ‚ค ์œ ํ˜•์œผ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ์ด ํ‚ค๋ฅผ ํด๋ผ์ด์–ธํŠธ ํ‚ค๋ผ๊ณ  ๋ถˆ๋ €์Šต๋‹ˆ๋‹ค.

    USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

  7. PIN ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”. ๊ทธ๋ฆฌ๊ณ  ํ‚ค ์Œ์˜ ํ•˜๋“œ์›จ์–ด ์ƒ์„ฑ์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.

    USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

  8. ์„œ๋ฒ„ ์ธ์ฆ์„œ์™€ ์œ ์‚ฌํ•˜๊ฒŒ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ธ์ฆ์„œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ์—๋Š” ํ…œํ”Œ๋ฆฟ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. [๊ธฐ๋ณธ๊ฐ’] HTTPS_client ํด๋ฆญํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š” ๋ชจ๋‘ ์ ์šฉ.
  9. ํƒญ ์ œ๋ชฉ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ํ† ํฐ์— ๋Œ€ํ•œ ์ธ์ฆ์„œ๋ฅผ ์ €์žฅํ•ด ๋‹ฌ๋ผ๋Š” ์š”์ฒญ์— ๊ธ์ •์ ์œผ๋กœ ์‘๋‹ตํ•ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ์ ์œผ๋กœ ํƒญ์—์„œ ์ธ์ฆ์„œ XCA์—์„œ๋Š” ์ด์™€ ๊ฐ™์€ ๊ฒƒ์„ ์–ป์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
์ด ์ตœ์†Œ ํ‚ค ๋ฐ ์ธ์ฆ์„œ ์„ธํŠธ๋Š” ์„œ๋ฒ„ ์ž์ฒด ์„ค์ •์„ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

๊ตฌ์„ฑํ•˜๋ ค๋ฉด CA ์ธ์ฆ์„œ, ์„œ๋ฒ„ ์ธ์ฆ์„œ ๋ฐ ์„œ๋ฒ„ ๊ฐœ์ธ ํ‚ค๋ฅผ ๋‚ด๋ณด๋‚ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด XCA์˜ ํ•ด๋‹น ํƒญ์—์„œ ์›ํ•˜๋Š” ํ•ญ๋ชฉ์„ ์„ ํƒํ•˜๊ณ  ์ˆ˜์ถœ.

Nginx์—

๋‚˜๋Š” nginx ์„œ๋ฒ„๋ฅผ ์„ค์น˜ํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์“ฐ์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ณต์‹ ๋ฌธ์„œ๋Š” ๋งํ•  ๊ฒƒ๋„ ์—†๊ณ  ์ธํ„ฐ๋„ท์— ์ด ์ฃผ์ œ์— ๋Œ€ํ•œ ์ถฉ๋ถ„ํ•œ ๊ธฐ์‚ฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ HTTPS ๋ฐ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ๋ฐ”๋กœ ์„ค์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

nginx.conf์˜ ์„œ๋ฒ„ ์„น์…˜์— ๋‹ค์Œ ์ค„์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

server {
	listen 443 ssl;
	ssl_verify_depth 1;
	ssl_certificate /etc/nginx/Server.crt;
	ssl_certificate_key /etc/nginx/ServerKey.pem;
	ssl_client_certificate /etc/nginx/CA.crt;
	ssl_verify_client on;
}

nginx์—์„œ SSL ๊ตฌ์„ฑ๊ณผ ๊ด€๋ จ๋œ ๋ชจ๋“  ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์„ค๋ช…์€ ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_client_certificate

์ œ๊ฐ€ ์Šค์Šค๋กœ์—๊ฒŒ ์งˆ๋ฌธํ•œ ๋‚ด์šฉ์„ ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

  • ssl_verify_client - ์ธ์ฆ์„œ์— ๋Œ€ํ•œ ์‹ ๋ขฐ ์ฒด์ธ์„ ํ™•์ธํ•ด์•ผ ํ•จ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ssl_verify_length - ์ฒด์ธ์˜ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฃจํŠธ ์ธ์ฆ์„œ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๊นŠ์ด๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ์ธ์ฆ์„œ๋Š” ๋ฃจํŠธ ์ธ์ฆ์„œ์—์„œ ์ฆ‰์‹œ ์„œ๋ช…๋˜๋ฏ€๋กœ ๊นŠ์ด๋Š” 1๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ธ์ฆ์„œ๊ฐ€ ์ค‘๊ฐ„ CA์—์„œ ์„œ๋ช…๋˜๋ฉด ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜์— 2๋ฅผ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ssl_client_certificate - ์‚ฌ์šฉ์ž ์ธ์ฆ์„œ์˜ ์‹ ๋ขฐ๋„๋ฅผ ํ™•์ธํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฃจํŠธ ์ธ์ฆ์„œ์˜ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ssl_certificate/ssl_certificate_key - ์„œ๋ฒ„ ์ธ์ฆ์„œ/๊ฐœ์ธ ํ‚ค์˜ ๊ฒฝ๋กœ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๊ตฌ์„ฑ์— ์˜คํƒ€๊ฐ€ ์—†๋Š”์ง€, ๋ชจ๋“  ํŒŒ์ผ์ด ์˜ฌ๋ฐ”๋ฅธ ์œ„์น˜์— ์žˆ๋Š”์ง€ ๋“ฑ์„ ํ™•์ธํ•˜๋ ค๋ฉด nginx -t๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š”.

๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒŒ ๋‹ค์•ผ! ๋ณด์‹œ๋‹ค์‹œํ”ผ ์„ค์ •์€ ๋งค์šฐ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

Firefox์—์„œ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ

์šฐ๋ฆฌ๋Š” ์™„์ „ํžˆ Linux์—์„œ ๋ชจ๋“  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ฏ€๋กœ ์‚ฌ์šฉ์ž๋„ Linux์—์„œ ์ž‘์—…ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค(Windows๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ด์ „ ๊ธฐ์‚ฌ์˜ ๋ธŒ๋ผ์šฐ์ € ์„ค์ • ์ง€์นจ์„ ์ฐธ์กฐํ•˜์„ธ์š”..

  1. ํŒŒ์ด์–ดํญ์Šค๋ฅผ ์‹คํ–‰ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
  2. ๋จผ์ € ํ† ํฐ ์—†์ด ๋กœ๊ทธ์ธ์„ ์‹œ๋„ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทธ๋ฆผ์„ ์–ป์Šต๋‹ˆ๋‹ค.

    USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

  3. ์ด๋™ about : preferences # privacy, ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ๋ณด์•ˆ ์žฅ์น˜โ€ฆ
  4. ์šฐ๋ฆฌ๋Š” ๋ˆ„๋ฆ…๋‹ˆ๋‹ค ํ•˜์ค‘์ƒˆ PKCS#11 ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  librtpkcs11ecp.so์— ๋Œ€ํ•œ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  5. ์ธ์ฆ์„œ๊ฐ€ ํ‘œ์‹œ๋˜๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ๋‹ค์Œ์œผ๋กœ ์ด๋™ํ•˜์„ธ์š”. ์ธ์ฆ์„œ ๊ด€๋ฆฌ์ž. PIN์„ ์ž…๋ ฅํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž…๋ ฅํ•œ ํ›„ ํƒญ์— ํ‘œ์‹œ๋œ ๋‚ด์šฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์˜ ์ฆ๋ช…์„œ ํ† ํฐ์˜ ์ธ์ฆ์„œ๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.
  6. ์ด์ œ ํ† ํฐ์„ ์‚ฌ์šฉํ•ด๋ณด์ž. Firefox๋Š” ์„œ๋ฒ„์— ๋Œ€ํ•ด ์„ ํƒํ•  ์ธ์ฆ์„œ๋ฅผ ์„ ํƒํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ์ธ์ฆ์„œ๋ฅผ ์„ ํƒํ•˜์„ธ์š”.

    USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

  7. ์ด์ต!

    USB ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์—์„œ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Linux์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์„ค์ •์ด ํ•œ ๋ฒˆ ์™„๋ฃŒ๋˜๋ฉด ์ธ์ฆ์„œ ์š”์ฒญ ์ฐฝ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ์„ ํƒ ์‚ฌํ•ญ์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดํ›„์—๋Š” ํฌํ„ธ์— ๋กœ๊ทธ์ธํ•  ๋•Œ๋งˆ๋‹ค ํ† ํฐ์„ ์‚ฝ์ž…ํ•˜๊ณ  ํฌ๋งท ์ค‘์— ์ง€์ •๋œ ์‚ฌ์šฉ์ž PIN ์ฝ”๋“œ๋งŒ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ธ์ฆ ํ›„์— ์„œ๋ฒ„๋Š” ์–ด๋–ค ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธํ–ˆ๋Š”์ง€ ์ด๋ฏธ ์•Œ๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋” ์ด์ƒ ํ™•์ธ์„ ์œ„ํ•ด ์ถ”๊ฐ€ ์ฐฝ์„ ๋งŒ๋“ค ์ˆ˜ ์—†์ง€๋งŒ ์‚ฌ์šฉ์ž๊ฐ€ ์ฆ‰์‹œ ๊ฐœ์ธ ๊ณ„์ •์— ๋กœ๊ทธ์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•„ํŒŒ์น˜

nginx์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ˆ„๊ตฌ๋„ Apache๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ์ด ์›น ์„œ๋ฒ„๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅธ๋‹ค๋ฉด ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ทธ๋ฆฌ๊ณ  HTTPS ๋ฐ ์ด์ค‘ ์ธ์ฆ ์„ค์ •์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋จผ์ € mod_ssl์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:
    $ a2enmod ssl
  2. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์‚ฌ์ดํŠธ์˜ ๊ธฐ๋ณธ HTTPS ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
    $ a2ensite default-ssl
  3. ์ด์ œ ๊ตฌ์„ฑ ํŒŒ์ผ /etc/apache2/sites-enabled/default-ssl.conf๋ฅผ ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค.
        SSLEngine on
        SSLProtocol all -SSLv2
    
        SSLCertificateFile	/etc/apache2/sites-enabled/Server.crt
        SSLCertificateKeyFile /etc/apache2/sites-enabled/ServerKey.pem
    
        SSLCACertificateFile /etc/apache2/sites-enabled/CA.crt
    
        SSLVerifyClient require
        SSLVerifyDepth  10

    ๋ณด์‹œ๋‹ค์‹œํ”ผ, ๋งค๊ฐœ๋ณ€์ˆ˜ ์ด๋ฆ„์€ nginx์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ด๋ฆ„๊ณผ ๊ฑฐ์˜ ์ผ์น˜ํ•˜๋ฏ€๋กœ ์„ค๋ช…ํ•˜์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ํ•œ ๋ฒˆ ๋ง์”€๋“œ๋ฆฌ์ง€๋งŒ, ์„ธ๋ถ€ ์‚ฌํ•ญ์— ๊ด€์‹ฌ์ด ์žˆ๋Š” ์‚ฌ๋žŒ์ด๋ผ๋ฉด ๋ˆ„๊ตฌ๋“ ์ง€ ์ด ๋ฌธ์„œ์— ์˜ค์‹  ๊ฒƒ์„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค.
    ์ด์ œ ์„œ๋ฒ„๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

    $ service apache2 reload
    $ service apache2 restart

  4. ๋ณด์‹œ๋‹ค์‹œํ”ผ Windows์ด๋“  Linux์ด๋“  ๋ชจ๋“  ์›น ์„œ๋ฒ„์—์„œ 5๋‹จ๊ณ„ ์ธ์ฆ์„ ์„ค์ •ํ•˜๋Š” ๋ฐ ์ตœ๋Œ€ XNUMX์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐ ์•ฝ XNUMX๋ถ„ ์ •๋„ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์€ ์ด์ค‘ ์ธ์ฆ์„ ์„ค์ •ํ•˜๊ณ  ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ต๊ณ  ๋ถˆ๋ถ„๋ช…ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์šฐ๋ฆฌ ๊ธฐ์‚ฌ๊ฐ€ ์ด ์‹ ํ™”๊ฐ€ ์ ์–ด๋„ ์กฐ๊ธˆ์ด๋ผ๋„ ์‚ฌ์‹ค์ž„์„ ํญ๋กœํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋“ฑ๋ก๋œ ์‚ฌ์šฉ์ž๋งŒ ์„ค๋ฌธ ์กฐ์‚ฌ์— ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊ทธ์ธ์ œ๋ฐœ

GOST 34.10-2012์— ๋”ฐ๋ผ ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ TLS๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐ ์ง€์นจ์ด ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ?

  • ์˜ˆ, TLS-GOST๊ฐ€ ๋งค์šฐ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค

  • ์•„๋‹ˆ์š”, GOST ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•œ ํŠœ๋‹์€ ํฅ๋ฏธ๋กญ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

44๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ํˆฌํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. 9๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ๊ถŒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€