Google์ ํธ์คํธ์ ์ฐ๊ฒฐ๋์ด SSH๋ฅผ ํตํด ์ฌ์ฉ์ ์ก์ธ์ค๋ฅผ ๊ตฌ์ฑํ๊ธฐ ์ํ ์ถ๊ฐ ์ธ์ฆ ๋ฉ์ปค๋์ฆ์ ๊ตฌํ์ ์ ์ํ๋ HIBA(Host Identity Based Authorization) ํ๋ก์ ํธ์ ์์ค ์ฝ๋๋ฅผ ๊ณต๊ฐํ์ต๋๋ค(์ธ์ฆ ์ ํน์ ๋ฆฌ์์ค์ ๋ํ ์ก์ธ์ค ํ์ฉ ์ฌ๋ถ ํ์ธ). ๊ณต๊ฐ ํค ์ฌ์ฉ). OpenSSH์์ ํตํฉ์ /etc/ssh/sshd_config์ AuthorizedPrincipalsCommand ์ง์๋ฌธ์ HIBA ํธ๋ค๋ฌ๋ฅผ ์ง์ ํ์ฌ ์ ๊ณต๋ฉ๋๋ค. ํ๋ก์ ํธ ์ฝ๋๋ C๋ก ์์ฑ๋์์ผ๋ฉฐ BSD ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค.
HIBA๋ ํธ์คํธ์ ๊ด๋ จ๋ ์ฌ์ฉ์ ์ธ์ฆ์ ์ ์ฐํ๊ณ ์ค์ ์ง์ค์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด OpenSSH ์ธ์ฆ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ํ์ค ์ธ์ฆ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ง๋ง, ์ฐ๊ฒฐ์ด ์ด๋ฃจ์ด์ง๋ ํธ์คํธ ์ธก์ Authorized_keys ๋ฐ Authorized_users ํ์ผ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ณ๊ฒฝํ ํ์๊ฐ ์์ต๋๋ค. Authorized_(keys|users) ํ์ผ์ ์ ํจํ ๊ณต๊ฐ ํค ๋ฐ ์ก์ธ์ค ์กฐ๊ฑด ๋ชฉ๋ก์ ์ ์ฅํ๋ ๋์ HIBA๋ ์ฌ์ฉ์-ํธ์คํธ ๋ฐ์ธ๋ฉ์ ๋ํ ์ ๋ณด๋ฅผ ์ธ์ฆ์ ์์ฒด์ ์ง์ ํตํฉํฉ๋๋ค. ํนํ ์ฌ์ฉ์ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ๊ธฐ ์ํ ํธ์คํธ ๋งค๊ฐ๋ณ์์ ์กฐ๊ฑด์ ์ ์ฅํ๋ ํธ์คํธ ์ธ์ฆ์์ ์ฌ์ฉ์ ์ธ์ฆ์์ ๋ํ ํ์ฅ์ด ์ ์๋์์ต๋๋ค.
ํธ์คํธ ์ธก ๊ฒ์ฌ๋ AuthorizedPrincipalsCommand ์ง์๋ฌธ์ ์ง์ ๋ hiba-chk ์ฒ๋ฆฌ๊ธฐ๋ฅผ ํธ์ถํ์ฌ ์์๋ฉ๋๋ค. ์ด ํ๋ก์ธ์๋ ์ธ์ฆ์์ ํตํฉ๋ ํ์ฅ์ ๋์ฝ๋ฉํ๊ณ ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ก์ธ์ค ํ์ฉ ๋๋ ์ฐจ๋จ์ ๊ฒฐ์ ํฉ๋๋ค. ์ก์ธ์ค ๊ท์น์ CA(์ธ์ฆ ๊ธฐ๊ด) ์์ค์์ ์ค์์ ์ผ๋ก ๊ฒฐ์ ๋๋ฉฐ ์์ฑ ๋จ๊ณ์์ ์ธ์ฆ์์ ํตํฉ๋ฉ๋๋ค.
์ธ์ฆ ์ผํฐ ์ธก๋ฉด์๋ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ถํ์ ์ผ๋ฐ ๋ชฉ๋ก(์ฐ๊ฒฐ์ด ํ์ฉ๋๋ ํธ์คํธ)๊ณผ ์ด๋ฌํ ๊ถํ์ ์ฌ์ฉํ๋๋ก ํ์ฉ๋ ์ฌ์ฉ์ ๋ชฉ๋ก์ด ์ ์ง ๊ด๋ฆฌ๋ฉ๋๋ค. ์๊ฒฉ ์ฆ๋ช ์ ๋ํ ํตํฉ ์ ๋ณด๊ฐ ํฌํจ๋ ์ธ์ฆ๋ ์ธ์ฆ์๋ฅผ ์์ฑํ๊ธฐ ์ํด hiba-gen ์ ํธ๋ฆฌํฐ๊ฐ ์ ์๋๊ณ , ์ธ์ฆ ๊ธฐ๊ด์ ์์ฑํ๋ ๋ฐ ํ์ํ ๊ธฐ๋ฅ์ด iba-ca.sh ์คํฌ๋ฆฝํธ์ ํฌํจ๋์ด ์์ต๋๋ค.
์ฌ์ฉ์๊ฐ ์ฐ๊ฒฐํ๋ฉด ์ธ์ฆ์์ ์ง์ ๋ ๊ถํ์ด ์ธ์ฆ ๊ธฐ๊ด์ ๋์งํธ ์๋ช ์ผ๋ก ํ์ธ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ธ๋ถ ์๋น์ค์ ์์กดํ์ง ์๊ณ ์ฐ๊ฒฐ์ด ์ด๋ฃจ์ด์ง ๋์ ํธ์คํธ ์ธก์์ ๋ชจ๋ ๊ฒ์ฌ๊ฐ ์ ์ ์ผ๋ก ์ํ๋ ์ ์์ต๋๋ค. SSH ์ธ์ฆ์๋ฅผ ์ธ์ฆํ๋ ์ธ์ฆ ๊ธฐ๊ด์ ๊ณต๊ฐ ํค ๋ชฉ๋ก์ TrustedUserCAKeys ์ง์์ด๋ฅผ ํตํด ์ง์ ๋ฉ๋๋ค.
์ฌ์ฉ์๋ฅผ ํธ์คํธ์ ์ง์ ์ฐ๊ฒฐํ๋ ๊ฒ ์ธ์๋ HIBA๋ฅผ ์ฌ์ฉํ๋ฉด ๋ณด๋ค ์ ์ฐํ ์ก์ธ์ค ๊ท์น์ ์ ์ํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์์น, ์๋น์ค ์ ํ ๋ฑ์ ์ ๋ณด๋ฅผ ํธ์คํธ์ ์ฐ๊ด์ํฌ ์ ์์ผ๋ฉฐ, ์ฌ์ฉ์ ์ ๊ทผ ๊ท์น์ ์ ์ํ ๋ ํน์ ์๋น์ค ์ ํ์ ๊ฐ์ง ๋ชจ๋ ํธ์คํธ์ ์ฐ๊ฒฐ์ ํ์ฉํ๊ฑฐ๋ ํน์ ์์น์ ์๋ ํธ์คํธ์ ์ฐ๊ฒฐ์ ํ์ฉํ ์ ์์ต๋๋ค.
์ถ์ฒ : opennet.ru