Node-redis: redis URL์—์„œ tls ์ง€์›

์— ๋งŒ๋“  2017๋…„ 08์›” 22์ผ  ยท  8์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: NodeRedis/node-redis

์˜ˆ์‹œ :
rediss://:password<strong i="6">@rediss</strong>:6400/1?rejectUnauthorized=false

https://www.iana.org/assignments/uri-schemes/prov/redis

๋ถ„๋ช…ํžˆ HTTPS(RFC 2818)์™€ ์œ ์‚ฌํ•˜๊ฒŒ ๋ช…๋ช…๋œ rediss: URI ์ฒด๊ณ„(์˜ˆ, ๋‘ ๊ฐœ์˜ "s",
์˜คํƒ€๊ฐ€ ์•„๋‹˜)์€ ์ผ๋ถ€ ํด๋ผ์ด์–ธํŠธ์—์„œ TLS๋ฅผ ํ†ตํ•œ RESP๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
TLS ์‚ฌ์šฉ ์™ธ์— rediss: URI ์ฒด๊ณ„๋Š” ์•Œ๋ ค์ ธ ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
redis: URI ์ฒด๊ณ„์™€ ์ฐจ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

Feature Request pending-author-input

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ๋‹ค์‹œ ์ƒ๊ฐํ•ด ๋ณผ ๋งŒํผ ์ถฉ๋ถ„ํ•œ ๊ด€์‹ฌ์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  8 ๋Œ“๊ธ€

๋‚˜๋Š” ์ด๊ฒƒ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์— ๋ฐ˜๋Œ€ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” URL์— ๋ชจ๋“  tls ์˜ต์…˜์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์–ด์จŒ๋“  ๋” ๋งŽ์€ ์˜ต์…˜์„ ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. tls ์˜ต์…˜๊ณผ ์ผ๋ฐ˜ ์˜ต์…˜์„ ๊ตฌ๋ณ„ํ•˜๋Š” ๊ฒƒ๋„ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ด€์‹ฌ์„ ๊ฐ€์ ธ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์˜ˆ๋ฅผ ๋“ค์–ด Mongodb๋ฅผ ๊ด€๋ฆฌ... https://docs.mongodb.com/manual/reference/connection-string/
๊ฒŒ๋‹ค๊ฐ€, URL์„ ํ†ตํ•ด ๋ชจ๋“  ์˜ต์…˜์„ ๋‹ค๋ฃจ์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์ด๋ฏธ ์ˆ˜๋ฝํ–ˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๊ณ ๋ คํ•˜๋ฉด ๋” ๋งŽ์€ ์ง€์›์„ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š๋Š” ์š”์ ์ด ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

"URL๊ณผ ํ•จ๊ป˜ ๋ชจ๋“  tls ์˜ต์…˜์„ ์ถ”๊ฐ€"ํ•ด์•ผ ํ•˜๋Š” ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์šด์˜ ๊ด€์ ์—์„œ๋Š” ์—ฐ๊ฒฐ์— ๋Œ€ํ•ด TLS ์•”ํ˜ธํ™”๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์‹ ๋ขฐ ๊ด€๊ณ„ ์„ค์ •์€ ์–ด๋Š ์ชฝ์ด๋“  ์šด์˜ ์ฒด์ œ์—์„œ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์„ค์น˜๋œ ๋ฃจํŠธ/์ค‘๊ฐ„ ์ธ์ฆ ๊ธฐ๊ด€, Linux์˜ /etc/ssl ์ฐธ์กฐ). ์ €๋Š” "TLS๋ฅผ ํ™œ์„ฑํ™”"ํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ์„ค์ •์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ˆ/์•„๋‹ˆ์˜ค๊ฐ€ ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด rediss uri ์ฒด๊ณ„๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(๋‹ค๋ฅธ ์–ธ์–ด)๋Š” ์ด๋ฏธ ๋‹ค์Œ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ฉด node.js์— ๋Œ€ํ•œ ๋ณ„๋„์˜ ๊ตฌ์„ฑ์„ ์œ ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ๋‹ค์‹œ ์ƒ๊ฐํ•ด ๋ณผ ๋งŒํผ ์ถฉ๋ถ„ํ•œ ๊ด€์‹ฌ์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ NPM ๋ฆด๋ฆฌ์Šค๊ฐ€ ๊ณง ๊ณ„ํš๋ฉ๋‹ˆ๊นŒ? 2.8.0์€ ์ด ๊ธฐ๋Šฅ์ด ์—†๋Š” ์ตœ์‹  ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.

ํ˜•์‹์„ ํ™•์žฅํ•˜์ง€ ์•Š๊ณ  URL์—์„œ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ณธ tls ์˜ต์…˜์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋” ์ž‘์€ ํ˜•์‹์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ์˜ˆ๋ฅผ ๋“ค์–ด servername ๋ฅผ URL์˜ hostname ๋ถ€๋ถ„์œผ๋กœ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์€ ํ•ฉ๋ฆฌ์ ์œผ๋กœ ์•ˆ์ „ํ•œ ์ž‘์—…์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์€ ๋ชจ๋ฅด์ง€๋งŒ ์ ์–ด๋„ compose.io๋Š” SSL์„ ํ†ตํ•ด Redis์šฉ SNI๋ฅผ ์‚ฌ์šฉ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ https://github.com/NodeRedis/node_redis/pull/1282 ๋ฅผ ํ†ตํ•ด ๋ถ€๋ถ„์ ์œผ๋กœ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

@BridgeAR ์•„์ง ์ถœ์‹œ๋˜์ง€ ์•Š์€ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ๊ณง ์ถœ์‹œ๋  ์˜ˆ์ •์ธ๊ฐ€์š”?

๋ฐฉ๊ธˆ NPM์— v3.0.0์„ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. https://github.com/NodeRedis/node-redis/releases/tag/v3.0.0 - @calebboyd๊ฐ€ ์–ธ๊ธ‰ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ์ง€๊ธˆ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰

๊ด€๋ จ ๋ฌธ์ œ

id0Sch picture id0Sch  ยท  4์ฝ”๋ฉ˜ํŠธ

Atala picture Atala  ยท  3์ฝ”๋ฉ˜ํŠธ

gpascale picture gpascale  ยท  4์ฝ”๋ฉ˜ํŠธ

shmendo picture shmendo  ยท  6์ฝ”๋ฉ˜ํŠธ

Mickael-van-der-Beek picture Mickael-van-der-Beek  ยท  6์ฝ”๋ฉ˜ํŠธ