2FA(2๋จ๊ณ ์ธ์ฆ)๋ฅผ ์ฌ์ฉํ๋๋ก ์ค์ ํ๋ฉด ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด GitHub์ ์ก์ธ์คํ ๋ ์ธ์ฆ ์ฝ๋๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค. 2FA๋ฅผ ์ฒ์ ๊ตฌ์ฑํ ๋, ๊ณ์ ์ 2FA ๋ฐฉ๋ฒ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ๋์๋์ง ํ์ธํ๊ธฐ ์ํ 28์ผ๊ฐ์ ๊ณ์ ๊ฒ์ฌ ๊ธฐ๊ฐ์ด ์์๋ฉ๋๋ค. ์ด 28์ผ ์์ 2FA๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ์ํํ๋ฉด ๊ฒ์ฌ ๊ธฐ๊ฐ์ ๋๋ผ ์ ์์ต๋๋ค. 28์ผ ์์ ์ธ์ฆํ์ง ์์ผ๋ฉด ๊ธฐ์กด GitHub ์ธ์ ์ค ํ๋์์ 2FA๋ฅผ ์ํํ๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค. 2FA๋ฅผ ์ํํ์ฌ 28์ผ ๊ฒ์ฌ๋ฅผ ํต๊ณผํ ์ ์๋ ๊ฒฝ์ฐ ์ ๊ณต๋ ๋ฐ๋ก ๊ฐ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ 2FA ์ค์ ์ ๋ค์ ๊ตฌ์ฑํ๊ณ GitHub์ ๋ํ ์ก์ธ์ค๋ฅผ ์ ์งํด์ผ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ 2๋จ๊ณ ์ธ์ฆ ๊ตฌ์ฑ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
API ๋๋ ๋ช ๋ น์ค๊ณผ ๊ฐ์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ฌ GitHub์ ์ก์ธ์คํ๋ ๊ฒฝ์ฐ ํ ํฐ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ SSH ํค๋ฅผ ์ฌ์ฉํ์ฌ ์ธ์ฆํ๊ฒ ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ GitHub์ ๋ํ ์ธ์ฆ ์ ๋ณด์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
์น ์ฌ์ดํธ ๋ก๊ทธ์ธ ์ 2FA ์ํ
์ํธ๋ฅผ ์ฌ์ฉํ์ฌ GitHub์ ๋ก๊ทธ์ธํ ํ์๋ ์ธ์ฆ ์ฝ๋๋ฅผ ์ ๊ณตํ๊ณ , GitHub Mobile์์ ์๋ฆผ์ ํญํ๊ฑฐ๋ ๋ณด์ ํค๋ฅผ ์ฌ์ฉํ์ฌ 2FA๋ฅผ ์ํํด์ผ ํฉ๋๋ค.
GitHub๋ ๋ก๊ทธ์์ํ๊ฑฐ๋ ์ ๋๋ฐ์ด์ค๋ฅผ ์ฌ์ฉ ์ค์ด๊ฑฐ๋ ์ค์ํ ์์ ์ ์ํ ์ค์ด๊ฑฐ๋ ์ธ์ ์ด ๋ง๋ฃ๋ ๊ฒฝ์ฐ์๋ง 2FA ์ธ์ฆ ์ฝ๋๋ฅผ ๋ค์ ์ ๊ณตํ๋๋ก ์์ฒญํฉ๋๋ค. ์ค์ํ ์์ ์ 2FA์ ๋ํ ์์ธํ ๋ด์ฉ์ sudo ๋ชจ๋์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
TOTP ์ ํ๋ฆฌ์ผ์ด์ ์ ํตํด ์ฝ๋ ์์ฑ
TOTP ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ฉํ์ฌ 2๋จ๊ณ ์ธ์ฆ์ ์ค์ ํ๋๋ก ์ ํํ ๊ฒฝ์ฐ ์ธ์ ๋ ์ง GitHub์ ๋ํ ์ธ์ฆ ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ํ๋ฉด ์ ์ฝ๋๊ฐ ์์ฑ๋ฉ๋๋ค. ์ธ๋ถ ์ง์นจ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค๋ช ์๋ฅผ ์ฐธ์กฐํด์ผ ํฉ๋๋ค.
2๋จ๊ณ ์ธ์ฆ์ ๊ตฌ์ฑํ ํ Authenticator ์ ํ๋ฆฌ์ผ์ด์ ์ ์ญ์ ํ๋ ๊ฒฝ์ฐ ๊ณ์ ์ ์ก์ธ์คํ๋ ค๋ฉด ๋ณต๊ตฌ ์ฝ๋๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค. ๋ง์ TOTP ์ฑ์ด ํด๋ผ์ฐ๋์์ ์ธ์ฆ ์ฝ๋์ ์์ ํ ๋ฐฑ์ ์ ์ง์ํ๋ฉฐ, ๋๋ฐ์ด์ค์ ๋ํ ์ก์ธ์ค ๊ถํ์ ์์ ๊ฒฝ์ฐ ๋ณต์ํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ 2FA ์๊ฒฉ ์ฆ๋ช ์ด ์์ค๋ ๊ฒฝ์ฐ ๊ณ์ ๋ณต๊ตฌ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
๋ณด์ ํค ์ฌ์ฉ
๊ณ์ ์ ๋ณด์ ํค๋ฅผ ์ค์ ํ๊ณ ๋ธ๋ผ์ฐ์ ์์ ๋ณด์ ํค๋ฅผ ์ง์ํ๋ ๊ฒฝ์ฐ, ๋ณด์ ํค๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๊ทธ์ธ์ ์๋ฃํ ์ ์์ต๋๋ค.
- ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ์ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด GitHub์ ๋ก๊ทธ์ธํฉ๋๋ค.
- ๋ฌผ๋ฆฌ์ ๋ณด์ ํค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋๋ฐ์ด์ค์ ์ฐ๊ฒฐ๋์ด ์์ด์ผ ํฉ๋๋ค.
- ์ด์ ์ฒด์ ์์ ๋ณด์ ํค ํ๋กฌํํธ๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ค๋ฉด "๋ณด์ ํค ์ฌ์ฉ"์ ์ ํํฉ๋๋ค.
- ํ๋กฌํํธ์์ ์ ์ ํ ์ต์ ์ ์ ํํฉ๋๋ค. ๋ณด์ ํค ๊ตฌ์ฑ์ ๋ฐ๋ผ PIN์ ์ ๋ ฅํ๊ฑฐ๋, ์์ฒด ์ธ์ ํ๋กฌํํธ๋ฅผ ์๋ฃํ๊ฑฐ๋, ๋ฌผ๋ฆฌ์ ๋ณด์ ํค๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ํธ ์ฌ์ฉ
2FA๋ฅผ ์ฌ์ฉํ๋๋ก ์ค์ ํ๊ณ ๊ณ์ ์ ์ํธ๋ฅผ ์ถ๊ฐํ ๊ฒฝ์ฐ ์ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๊ทธ์ธํ ์ ์์ต๋๋ค. ์ํธ ํค๋ ์ํธ ์๊ตฌ ์ฌํญ๊ณผ 2FA ์๊ตฌ ์ฌํญ์ ๋ชจ๋ ์ถฉ์กฑํ๋ฏ๋ก ํ ๋จ๊ณ๋ก ๋ก๊ทธ์ธ์ ์๋ฃํ ์ ์์ต๋๋ค. ํจ์คํค ์ ๋ณด์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
๋ฌธ์ ๋ฉ์์ง ์์
๋ฌธ์ ๋ฉ์์ง๋ฅผ ํตํด 2๋จ๊ณ ์ธ์ฆ์ ์ค์ ํ๋ ๊ฒฝ์ฐ GitHub์์ ์ธ์ฆ ์ฝ๋๊ฐ ํฌํจ๋ ๋ฌธ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ ๋๋ค.
GitHub Mobile๋ก ํ์ธ
GitHub Mobile์ ์ค์นํ๊ณ ๋ก๊ทธ์ธํ ๊ฒฝ์ฐ GitHub Mobile๋ก 2๋จ๊ณ ์ธ์ฆํ๋๋ก ์ ํํ ์ ์์ต๋๋ค.
-
์ฌ์ฉ์ ์ด๋ฆ๊ณผ ์ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ์์ GitHub์ ๋ก๊ทธ์ธํฉ๋๋ค.
-
GitHub๋ ๋ก๊ทธ์ธ ์๋๋ฅผ ํ์ธํ๋ ํธ์ ์๋ฆผ์ ๋ณด๋ ๋๋ค. ํธ์ ์๋ฆผ์ ์ด๊ฑฐ๋ GitHub Mobile ์ฑ์ ์ด๋ฉด ์ด ๋ก๊ทธ์ธ ์๋๋ฅผ ์น์ธํ๊ฑฐ๋ ๊ฑฐ๋ถํ๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค.
์ฐธ๊ณ ํญ๋ชฉ
์ด ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ก๊ทธ์ธํ๋ ๋ธ๋ผ์ฐ์ ๋ด์ ํ์๋๋ ๋ ์๋ฆฌ ์ซ์๋ฅผ ์ ๋ ฅํด์ผ ํ ์ ์์ต๋๋ค.
- GitHub Mobile์ ์ฌ์ฉํ์ฌ ๋ก๊ทธ์ธ ์๋๋ฅผ ์น์ธํ๋ฉด ๋ธ๋ผ์ฐ์ ์์ ๋ก๊ทธ์ธ ์๋๋ฅผ ์๋์ผ๋ก ์๋ฃํฉ๋๋ค.
- ๋ก๊ทธ์ธ ์๋๋ฅผ ๊ฑฐ๋ถํ๋ฉด ์ธ์ฆ์ด ์๋ฃ๋์ง ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ๊ณ์ ๋ฐ ๋ฐ์ดํฐ ๋ณด์ ์ ์ง์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
๋ช ๋ น์ค์์ 2๋จ๊ณ ์ธ์ฆ ์ฌ์ฉ
Git ์๊ฒฉ ์ฆ๋ช ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ช ๋ น์ค์์ ์ธ์ฆ
Git ์๊ฒฉ ์ฆ๋ช ๊ด๋ฆฌ์๋ Windows, macOS ๋ฐ Linux์์ ์คํ๋๋ ๋ณด์ Git ์๊ฒฉ ์ฆ๋ช ๋์ฐ๋ฏธ์ ๋๋ค. Git ์๊ฒฉ ์ฆ๋ช ๋์ฐ๋ฏธ์ ๋ํ ์์ธํ ๋ด์ฉ์ Pro Git ์ค๋ช ์์์ ๋ฐ๋ณต ๋ฐฉ์ง๋ฅผ ์ฐธ์กฐํ์ธ์.
์ค์น ์ง์นจ์ ์ปดํจํฐ์ ์ด์ ์ฒด์ ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. ์์ธํ ๋ด์ฉ์ GitCredentialManager/git-credential-manager ๋ฆฌํฌ์งํ ๋ฆฌ์ ๋ค์ด๋ก๋ ๋ฐ ์ค์น๋ฅผ ์ฐธ์กฐํ์ธ์.
HTTPS๋ฅผ ์ฌ์ฉํ์ฌ ๋ช ๋ น์ค์์ ์ธ์ฆ
HTTPS URL์ ์ฌ์ฉํ์ฌ ๋ช ๋ น์ค์์ GitHub์ ๋ํด ์ธ์ฆํ ๋ ์ํธ๋ก ์ฌ์ฉํ personal access token์ ๋ง๋ค์ด์ผ ํฉ๋๋ค.
๋ช ๋ น์ค์์ ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ์ํธ ๋ฌป๋ ๋ฉ์์ง๊ฐ ํ์๋๋ฉด GitHub ์ฌ์ฉ์ ์ด๋ฆ ๋ฐ personal access token์ ์ฌ์ฉํฉ๋๋ค. ๋ช ๋ น์ค ํ๋กฌํํธ๋ ์ํธ๋ฅผ ์์ฒญํ ๋ personal access token์(๋ฅผ) ์ ๋ ฅํ๋๋ก ๋ช ์ํ์ง ์์ต๋๋ค.
์์ธํ ๋ด์ฉ์ ๊ฐ์ธ์ฉ ์ก์ธ์ค ํ ํฐ ๊ด๋ฆฌ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
SSH๋ฅผ ์ฌ์ฉํ์ฌ ๋ช ๋ น์ค์์ ์ธ์ฆ
2FA๋ฅผ ์ฌ์ฉํ๋๋ก ์ค์ ํด๋ SSH URL์ ์ฌ์ฉํ์ฌ ๋ช ๋ น์ค์์ GitHub์ ์ธ์ฆํ๋ ๋ฐฉ๋ฒ์ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. SSH ํค๋ฅผ ์ค์ ํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ SSH๋ฅผ ํตํ GitHub ์ฐ๊ฒฐ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
๋ฌธ์ ํด๊ฒฐ
2๋จ๊ณ ์ธ์ฆ ์๊ฒฉ ์ฆ๋ช ์ ๋ํ ์ก์ธ์ค ๊ถํ์ด ์์ด์ง๋ฉด ๋ณต๊ตฌ ์ฝ๋ ๋๋ ๋ค๋ฅธ ๋ณต๊ตฌ ๋ฐฉ๋ฒ(์ค์ ํ ๊ฒฝ์ฐ)์ ์ฌ์ฉํ์ฌ ๊ณ์ ์ ๋ํ ์ก์ธ์ค ๊ถํ์ ๋ค์ ์ป์ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ 2FA ์๊ฒฉ ์ฆ๋ช ์ด ์์ค๋ ๊ฒฝ์ฐ ๊ณ์ ๋ณต๊ตฌ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
์ฐธ๊ณ ํญ๋ชฉ
์ด๋ค ๋ณต๊ตฌ ๋ฐฉ๋ฒ๋ ์ฌ์ฉํ ์ ์๋ค๋ฉด ๊ณ์ ์ก์ธ์ค ๊ถํ์ ์๊ตฌ์ ์ผ๋ก ์์์ ์๋ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ ๊ธด ๊ณ์ ์ ์ฐ๊ฒฐ๋ ์ด๋ฉ์ผ ์ฃผ์์ ์ฐ๊ฒฐ์ ํด์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ์ฐ๊ฒฐ๋์ง ์์ ์ด๋ฉ์ผ ์ฃผ์๋ฅผ ์ ๊ณ์ ๋๋ ๊ธฐ์กด ๊ณ์ ์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ์ ๊ธด ๊ณ์ ์์ ์ด๋ฉ์ผ ์ฃผ์ ์ฐ๊ฒฐ ํด์ ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
์ธ์ฆ์ ์ฌ๋ฌ ๋ฒ ์คํจํ๋ ๊ฒฝ์ฐ ํด๋ํฐ์ ์๊ณ๋ฅผ ๋ชจ๋ฐ์ผ ๊ณต๊ธ์์ ๋๊ธฐํํด์ผ ํฉ๋๋ค. ์ข ์ข ์์ ์ ํ์ค ์๊ฐ๋๋ฅผ ์ ๊ณตํ๋ ๋์ ํด๋ ์ ํ์ ์๊ณ์์ "์๋์ผ๋ก ์ค์ " ์ต์ ์ ํ์ธํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค.