-
[Git] SSH Key ์์ฑ ๋ฐ ์ค์ Git 2020. 12. 11. 11:27๋ฐ์ํ
- ์ด ๊ธ์ SSH Key ์์ฑํ์ฌ Github์ ๋ฑ๋กํ๋ ๊ณผ์ ์ ๋ํ ๊ธ์ ๋๋ค.
SSH๋?
SSH๋ Secure Shell Protocol์ ์ฝ์๋ก ์ปดํจํฐ์ ์ปดํจํฐ๋ผ๋ฆฌ ํต์ ํ๋ ๋คํธ์ํฌ ํ๋กํ ์ฝ ์ค ํ๋๋ก ๋ณด์์ ์ผ๋ก ์์ ํ๊ฒ ํต์ ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ํ๋กํ ์ฝ์ ๋๋ค.
SSH๋ Github, Bitbucket ๊ฐ์ ์๊ฒฉ์ ์ฅ์์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ฃผ๋ก ์ฌ์ฉํฉ๋๋ค. ์๊ฒฉ์ ์ฅ์์์ clone์ ํ ๊ฒฝ์ฐ SSH key๋ฅผ ๋ฑ๋กํ๋ฉด ์์ ํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ ์๊ณ ๊ฐ์ธ ์ปดํจํฐ์์ ์๊ฒฉ์ ์ฅ์๋ก push ๋ํ ๋ณด์์ ์ ์งํ ์ํ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์์ต๋๋ค.
๋ํ SSH๋ ์๊ฒฉ์ ์์ ํ ๋๋ ์ฃผ๋ก ์ฌ์ฉํฉ๋๋ค. ์๋ฅผ ๋ค์ด AWS์ ๊ฐ์ ํด๋ผ์ฐ๋ ์๋น์ค ์ฌ์ฉ ์ ์ธ์คํด์ค ์๋ฒ์ ์ ์ํด์ ๋จธ์ ์ ๋ช ๋ น์ ๋ด๋ฆด ๋ SSH๋ฅผ ํตํ ์ ์์ ํ๊ฑฐ๋, ์จ-ํ๋ ๋ฏธ์ค๊ณผ ๊ฐ์ ์ฌ๋ด์ ๋์ฉ๋์ ๋ฆฌ๋ ์ค ์๋ฒ์ฉ ์ปดํจํฐ์ ์๊ฒฉ์ ์ ์ SSH๋ฅผ ์ด์ฉํฉ๋๋ค.
Private Key์ Public Key
SSH ํต์ ์ ํ๊ธฐ ์ํด์๋ ํ ์์ ํค๊ฐ ํ์ํฉ๋๋ค. ๊ณต๊ฐํค(Public Key)์ ๊ฐ์ธํค(Private Key) ์ ๋๋ค.
๊ณต๊ฐํค๋ ๋ง ๊ทธ๋๋ก ๊ณต๊ฐ๊ฐ ๋์ด๋ ๋น๊ต์ ์์ ํ key๋ก ๊ณต๊ฐํค๋ฅผ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ ์ ์ํธํ๋ฅผ ๊ฑฐ์ณ์ ๋ณด๋ด๊ฒ ๋ฉ๋๋ค. (๋ณตํธํ ๋ถ๊ฐ)
๊ฐ์ธํค๋ ์์ ๋ง ๊ฐ์ง๋ ํค๋ก ์ธ๋ถ๋ก ๊ณต๊ฐํด์๋ ์ ๋ ์๋๊ธฐ ๋๋ฌธ์ ๋ณธ์ธ์ ์ปดํจํฐ ๋ด๋ถ์๋ง ์ ์ฅ์ด ๋ฉ๋๋ค. ์ด๋ฌํ ๊ฐ์ธํค๋ฅผ ํตํด์ ๋ณตํธํ ๊ณผ์ ์ ๊ฑฐ์น ํ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ ์๊ฒ ๋ฉ๋๋ค.
๊ณต๊ฐํค์ ๊ฐ์ธํค๋ ๋ณต์กํ ์ํ์ ๊ด๊ณ๊ฐ ์กด์ฌํ๊ณ ํ ์์ธ์ง๋ฅผ ํ๋ณ์ ํตํด ์์ ํ ๋ฐ์ดํฐ ํต์ ์ด ์ด๋ค์ง๊ฒ ํ๋ ๊ฒ์ ๋๋ค.
SSH Key ์์ฑ
Mac, Linux๋ SSH ํจํค์ง์ ํฌํจ๋์ด ์๊ณ , Windows๋ Git for windows ์์ ๋ค์ด๊ฐ ์์ต๋๋ค.
๋ค์๊ณผ ๊ฐ์ด ssh-keygen ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ฒ ๋๋ฉด key๊ฐ ์์ฑ๋๋ ๊ฒฝ๋ก์ ํจ์ค์๋๋ฅผ ์ ๋ ฅํด์ผ ํฉ๋๋ค.
๊ฒฝ๋ก๋ ์ํฐ๋ฅผ ์ ๋ ฅํ๋ฉด ๊ธฐ๋ณธ ๊ฒฝ๋ก์ธ ~/.ssh์ ์ ์ฅํ๊ฒ ๋ฉ๋๋ค.
SSH Key ๋ฑ๋ก
๋ค์ ๊ทธ๋ฆผ์ฒ๋ผ id_rsa์ id_rsa.pub์ด ์กด์ฌํ๋๋ฐ id_rsa๊ฐ private key์ด๊ณ id_rsa.pub์ด public key๊ฐ ๋ฉ๋๋ค.
cat id_rsa.pub ๋๋ vi id_rsa.pub ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ ๊ณต๊ฐํค์ ๊ฐ์ ๋ณต์ฌํฉ๋๋ค.
Github์ ๋ค์ด๊ฐ์ Setting์ ๊ฐ๊ฒ ๋๋ฉด SSH Key๋ฅผ ๋ฑ๋กํ ์ ์์ต๋๋ค.
SSH ๋ฐฉ์์ผ๋ก Clone
clone ํ๊ณ ์ถ์ ์์ค์ฝ๋์ SSH ๊ฒฝ๋ก๋ฅผ ๋ณต์ฌํ์ฌ git clone ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด SSH ๋ฐฉ์์ผ๋ก clone ํ๊ฒ ๋ฉ๋๋ค.
๋ฐ์ํ'Git' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Git] Remote Repository ๋ช ๋ น์ด (0) 2021.05.30 [Git] Repo ์ค์น ๋ฐ ์ฌ์ฉ (0) 2021.02.12 [Git] Git Submodule(์๋ธ๋ชจ๋) ์ด๋? (0) 2021.02.03