Skip to main content

SSH ๋ฌธ์ œ ํ•ด๊ฒฐ

SSH๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ GitHub์— ์—ฐ๊ฒฐํ•˜๊ณ  ์ธ์ฆํ•˜๋Š” ๊ฒฝ์šฐ, ์˜ˆ๊ธฐ์น˜ ์•Š์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ์ด๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

HTTPS ํฌํŠธ๋ฅผ ํ†ตํ•ด SSH ์‚ฌ์šฉ

๊ฒฝ์šฐ์— ๋”ฐ๋ผ ๋ฐฉํ™”๋ฒฝ์€ SSH ์—ฐ๊ฒฐ์„ ์™„์ „ํžˆ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž๊ฒฉ ์ฆ๋ช… ์บ์‹ฑ๊ณผ ํ•จ๊ป˜ HTTPS ๋ณต์ œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ HTTPS ํฌํŠธ๋ฅผ ํ†ตํ•ด ๋งŒ๋“ค์–ด์ง„ SSH ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณต์ œ๋ฅผ ์‹œ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๋ฐฉํ™”๋ฒฝ ๊ทœ์น™์€ ์ด๋ฅผ ํ—ˆ์šฉํ•ด์•ผ ํ•˜์ง€๋งŒ ํ”„๋ก์‹œ ์„œ๋ฒ„๊ฐ€ ๋ฐฉํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

SSH ํ‚ค ์•”ํ˜ธ ๋ณต๊ตฌ

SSH ํ‚ค ์•”ํ˜ธ๋ฅผ ๋ถ„์‹คํ•œ ๊ฒฝ์šฐ ์‚ฌ์šฉํ•˜๋Š” ์šด์˜ ์ฒด์ œ์— ๋”ฐ๋ผ SSH ํ‚ค ์•”ํ˜ธ๋ฅผ ๋ณต๊ตฌํ•˜๊ฑฐ๋‚˜ ์ƒˆ SSH ํ‚ค ์•”ํ˜ธ๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ญ์ œ๋˜์—ˆ๊ฑฐ๋‚˜ ๋ˆ„๋ฝ๋œ SSH ํ‚ค

๋ณด์•ˆ ์˜ˆ๋ฐฉ ์กฐ์น˜๋กœ์„œ GitHub๋Š” 1๋…„ ๋™์•ˆ ์‚ฌ์šฉ๋˜์ง€ ์•Š์€ SSH ํ‚ค๋ฅผ ์ž๋™์œผ๋กœ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ํ˜ธ์ŠคํŠธ ํ‚ค ๊ฒ€์ฆ ์‹คํŒจ

๋ณด์•ˆ ์˜ˆ๋ฐฉ ์กฐ์น˜๋กœ์„œ, SSH๋Š” ์ด์ „์— ๋ณธ ํ˜ธ์ŠคํŠธ๋ฅผ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ๊ถŒํ•œ์ด ๊ฑฐ๋ถ€๋จ(publickey)

โ€œ์‚ฌ์šฉ ๊ถŒํ•œ์ด ๊ฑฐ๋ถ€๋จโ€ ์˜ค๋ฅ˜๋Š” ์„œ๋ฒ„๊ฐ€ ์—ฐ๊ฒฐ์„ ๊ฑฐ๋ถ€ํ–ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์ด์œ ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์˜ˆ์‹œ๋Š” ์•„๋ž˜์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ์ž˜๋ชป๋œ ํŒŒ์ผ ๋ฒˆํ˜ธ

์ด ์˜ค๋ฅ˜๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Œ์„ ์˜๋ฏธํ•˜๋ฉฐ, ๋ฐฉํ™”๋ฒฝ ๋ฐ ํ”„๋ก์‹œ ์„œ๋ฒ„๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ํ‚ค๊ฐ€ ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ž„

์ด ์˜ค๋ฅ˜๋Š” ์ด๋ฏธ ๋‹ค๋ฅธ ๊ณ„์ • ๋˜๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ถ”๊ฐ€๋œ ํ‚ค๋ฅผ ์ถ”๊ฐ€ ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: user/repo์— ๋ถ€์—ฌ๋œ ๊ถŒํ•œ์ด other-user์— ๊ฑฐ๋ถ€๋จ

์ด ์˜ค๋ฅ˜๋Š” ํ‘ธ์‹œ์— ์‚ฌ์šฉํ•˜๋Š” ํ‚ค๊ฐ€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๋Š” ๊ณ„์ •์— ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: user/repo์— ๋ถ€์—ฌ๋œ ๊ถŒํ•œ์ด user/other-repo์— ๊ฑฐ๋ถ€๋จ

์ด ์˜ค๋ฅ˜๋Š” ํ‘ธ์‹œ์— ์‚ฌ์šฉํ•˜๋Š” ํ‚ค๊ฐ€ ๋‹ค๋ฅธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋ฐฐํฌ ํ‚ค๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์œผ๋ฉฐ ํ‘ธ์‹œํ•˜๋ ค๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ์—์ด์ „ํŠธ๊ฐ€ ์„œ๋ช… ์‹คํŒจ๋ฅผ ์ธ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋“œ๋ฌธ ๊ฒฝ์šฐ์ง€๋งŒ Linux์—์„œ SSH๋ฅผ ํ†ตํ•ด GitHub์— ์—ฐ๊ฒฐํ•˜๋ฉด "Agent admitted failure to sign using the key" ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ssh-add: illegal option -- apple-use-keychain

์ด ์˜ค๋ฅ˜๋Š” ssh-add์˜ ๋ฒ„์ „์ด macOS ํ‚ค ์ง‘ํ•ฉ ํ†ตํ•ฉ์„ ์ง€์›ํ•˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•˜๋ฏ€๋กœ ํ‚ค ์ง‘ํ•ฉ์— ์•”ํ˜ธ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: SSL ์ธ์ฆ์„œ ๋ฌธ์ œ, CA ์ธ์ฆ์„œ๊ฐ€ ์ •์ƒ์ธ์ง€ ํ™•์ธ

์ด ์˜ค๋ฅ˜๋Š” CA ๋ฃจํŠธ ์ธ์ฆ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. CA ๋ฃจํŠธ ์ธ์ฆ์„œ๋ฅผ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ GitHub ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ํ‘ธ์‹œํ•˜๊ฑฐ๋‚˜ ๋Œ์–ด์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: ์•Œ ์ˆ˜ ์—†๋Š” ํ‚ค ์œ ํ˜•

์ด ์˜ค๋ฅ˜๋Š” ์‚ฌ์šฉํ•œ SSH ํ‚ค ํ˜•์‹์ด ์ธ์‹๋˜์ง€ ์•Š๊ฑฐ๋‚˜ SSH ํด๋ผ์ด์–ธํŠธ์—์„œ ์ง€์›ํ•˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: SSH ํ‚ค ๊ฐ์‚ฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ์Œ

์ด ์˜ค๋ฅ˜๋Š” Git ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” SSH ํ‚ค๊ฐ€ ํ™•์ธ๋˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.