ํด๋ผ์ฐ๋ ์๋ฒ ํ๊ฒฝ์ ๊ตฌ์ถํ๋ฉด์...
ํด๋ผ์ฐ๋ ์๋ฒ ํ๊ฒฝ์ ๊ตฌ์ถํ๊ณ , ์ค์ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊น์ง ๋ง์น๋ฉด์ ๊ธฐ์ด ์ค์ ๊ธฐ์ด๋ง ์ตํ ๊ฒ ๊ฐ๋ค. ์ด์ ์ด๋ป๊ฒ ์ฝ์์ ๋ค์ด๊ฐ๊ณ , ์ด๋ป๊ฒ ํฌํธ ํฌ์๋ฉ์ด ์ด๋ป๊ฒ ๋์๊ฐ๋์ง ์์๋๋ฐ, ssh, sudo ๋ฑ ๊ฑฐ๊ธฐ์ ์ฐ์ด๋ ํ๋กํ ์ฝ, ๊ฐ๋ ๋ค์ด ๋ฌด์ธ์ง ๋ด์ ์ผ๋ก ๋งํ๊ธฐ ์ด๋ ค์ ๋ค. ๋จธ๋ฆฟ์์ ์ถ์์ ์ผ๋ก ๋ฅ๋ฅ ๋ ๋ค๋ , ๋๊ฐ ๋ฌผ์ด๋ณด๋ฉด '์๋๋ฐ... ๊ทธ๊ฒ ์...' ์ผ๋ฒ๋ฌด๋ฆฌ๊ฒ ๋์๋ค. ์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ์กฐ๊ธ์ฉ ๊ธ์ ์ฝ๊ณ ์๋ค. ์ฌ์ํ ๊ฒ์ผ์ง๋ผ๋ ๊ธฐ์ด๋ถํฐ ํํํ๊ฒ ๊ณต๋ถํด์ผ ํจ์ ์์ฆ ๋ค์ด ๋ผ์ ๋ฆฌ๊ฒ ๋๋ผ๊ณ ์๋ค. ๊ณต๋ถ๋ ๊ธฐ์ด!
ssh๋?
ssh๋ ํ๋กํ ์ฝ๋ก, ์ธํฐ๋ท ํต์ ๊ท์ฝ์ด๋ค. [ Secure Shell ]์ ์ฝ์๋ก ์๊ฒฉ ํธ์คํธ ์ปดํจํฐ์ ์ ์ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค. Secure ๋ป๋๋ก ๋ณด์ ์ ธ์ด๋ค. ์๊ฒฉ์ผ๋ก ์ ์ํ๋ ๊ฒ๋งํผ, ์ํธํ ์์ด ๋ฐ๋ก ์ ์ํ ์ ๊ณ์ ์ ๋ณด๊ฐ ํ์ทจ๋ ์ํ์ด ๋๊ธฐ ๋๋ฌธ์, ํต์ ๊ณผ์ ์ ์ํธํ๋ฅผ ์ถ๊ฐํ ํ๋กํ ์ฝ์ด ๋ณดํธํ๋ ๊ฒ์ด๋ค. ํด๋ผ์ฐ๋ ์๋ฒ ์ธ์คํด์ค์ ๋ด ๋๋ถ ์ฌ์ด ํต์ ์ด ์ค๊ฐ์ ํ์ทจ๋์ด๋ ์ํธํ๊ฐ ๋์ด ์์ด ์ดํดํ๊ธฐ ํ๋ค๊ฒ ๋๋ ๊ฒ์ด๋ค. ์ฝ์๋ ๊ธฐ๋ณธ ํฌํธ๋ 22์ด๋ค.
ssh key = ๊ณ ๊ธ ๋น๋ฐ๋ฒํธ
์๊ฒฉ ํธ์คํธ์ ์ ์ํ๊ธฐ ์ ์ ์ฐ๋ฆฐ ํญ์ pem key๋ฅผ ๋น๊ตํด ์ฌ๋ฐ๋ฅธ key์ธ์ง ํ๋จํด ์ ์ํ๋ค. ssh๋ ๊ณต๊ฐํค(public key)์ ๋น๊ณต๊ฐ ํค(private key)๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ํค๋ฅผ ์์ฑํ๋ฉด ๊ณต๊ฐํค/๋น๊ณต๊ฐ ํค ๋ชจ๋ ์์ฑ๋๋ค. ๋น ๊ณต๊ฐํค๋ ์ ์ํ๋ ค๋ ํด๋ผ์ด์ธํธ์, ๊ณต๊ฐํค๋ ์๊ฒฉ ํธ์คํธ ์ปดํจํฐ์ ์์นํ๋ค. ์ฌ์ฉ์๊ฐ ssh๋ก ์ ์์ ์๋ํ๋ฉด ํด๋ผ์ด์ธํธ ๋จธ์ ์ ๋น๊ณต๊ฐ ํค์ ํธ์คํธ ์ปดํจํฐ์ ๋น ๊ณต๊ฐํค๋ฅผ ๋น๊ตํด ๋์ด ์ผ์นํ๋์ง ํ์ธํ๋ค.
์ฌ์ฉ ์์
์ฐ๋ฆฌ๊ฐ ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ์ฌ์ฉํด ์๋ฒ ์ธ์คํด์ค(=์๊ฒฉ ํธ์คํธ)๋ฅผ ์์ฑํ๊ณ ์ ์ํ ๋ ์ฌ์ฉํ๋ ํ๋กํ ์ฝ์ด ssh์ธ ๊ฒ์ด๋ค. ์๋์ฐ๋ putty ์๋น์ค๋ฅผ ํตํด key๋ฅผ ์ธ์ฆํด ssh๋ก ์๊ฒฉ ํธ์คํธ์ ์ ์ํ๊ณ , ์ ๋์ค ๊ธฐ๋ฐ์ macOS๋ ๊ธฐ๋ณธ์ ์ผ๋ก ssh๋ฅผ ์ง์ํ๊ธฐ ๋๋ฌธ์ ๋ฐ๋ก ํฐ๋ฏธ๋์์ ssh๋ฅผ ์ฌ์ฉํด ์๊ฒฉ ํธ์คํธ๋ก ์ ์ํ ์ ์๋ค. ๊ธฐ๋ณธ ํฌํธ๋ 22๋ฒ์ด๋, ๋ณด์์ ์ํด ํฌํธ ํฌ์๋ฉ์ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค. ์ด๋ ๊ฒ ํ๋ฉด ACG๋ฅผ ์ฌ์ฉํด ํธ์คํธ์ ์ ๊ทผ ๊ฐ๋ฅํ ip๋ฅผ ์ค์ ํ ์ ์๋ค.
~ [ ์๊ธด ์๋๋ฐ... ] ๊ฐ๋ ์ ๋ฆฌ ํ์ ~
์ ธ (shell)์ ๋ช ๋ น์ด์ ํ๋ก๊ทธ๋จ์ ์คํํ ๋ ์ฌ์ฉํ๋ ์ธํฐํ์ด์ค๋ก, ํต์ฌ ๊ธฐ๋ฅ์ธ ์ปค๋(Kernel)๊ณผ ์ฌ์ฉ์ ๊ฐ์ ์ค๊ฐ ๋ค๋ฆฌ ์ญํ ์ ํ๋ค. ์ฌ์ฉ์๋ก๋ถํฐ ๋ช ๋ น์ด๋ฅผ ๋ฐ์ ์ปค๋์ ์คํ์ํค๋ ๋ฐฉ์์ด๋ค. ๊ฒ์ ํฐ๋ฏธ๋ = ์ ธ / ์ ธ ์์ ์๋ ํต์ฌ ๊ธฐ๋ฅ = ์ปค๋. ํ์ง๋ง ์ฐ๋ฆฌ๊ฐ ์์ฃผ ์ฐ๋ ๋ช ๋ น ํ๋กฌํฌํธ์ ์ ธ์ ๋น์ทํด ๋ณด์ด์ง๋ง ๋ค๋ฅด๋ค. ์ ธ์์ ๋์ฑ ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋ค.
์ด๋ ๊ฒ ssh๋ก ํธ์คํธ ์๋ฒ์ ์ ์ํ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง, docker์ ๊ฒฝ์ฐ ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ์ ธ์ ์ ๊ทผํ๋ค. ์ปจํ ์ด๋ ๋จ์๋ก ๊ด๋ฆฌํ ๊ฒฝ์ฐ, ํน์ ๋ช ๋ น์ด๋ก ์ ธ์ ์ ๊ทผํ๋ค. ์ด๋ ๋ค์ ๋ถ๋ sh, bash๋ ๋ญ๊น?
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] /bin/bash
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] bash
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] /bin/sh
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] sh
์ ธ ์ข ๋ฅ sh, bash, zbash
os์ ์ฌ๋ฌ ์ข ๋ฅ๊ฐ ์๋ฏ์ด ์ ธ์๋ ์ฌ๋ฌ ์ข ๋ฅ๊ฐ ์๋ค. sh, bash, zbash๊ฐ ๋ํ์ ์ธ ์ ์ด๋ค.
- sh ($ / 1977~ / Bourne shell) ์ ๋์ค ์ด๊ธฐ์ ํ์ด๋ฌ๋ค๋ ์๋ฏธ (*๊ฑฐ์ ๊ธฐ๋ณธ)
- bash (# / 1987~ / Bourne-agin shell) ์๋์ฐ์์ ์ค์นํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์, sh์ ๋๋ถ๋ถ ํธํ๋จ
- zbash (% / ?? / ) bash, ksh, tcsh ๋ฑ ์ผ๋ถ ๊ธฐ๋ฅ์ ํฌํจํ๊ณ ๊ฐ์ ํ ํ์ฅํ ์. ์๋ ์์ฑ ์ง์ํจ
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] /bin/bash
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] bash
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] /bin/sh
docker exec -it [๋์ปค ์ปจํ
์ด๋ id] sh
์ด ๋ช ๋ น์ด๋ ์ปจํ ์ด๋ ์ ธ์ ์ข ๋ฅ๋ฅผ ๋ง์ถฐ์ ์ ๊ทผํ๋ ๋ช ๋ น์ด๊ฒ ๋ค...
์ฐธ๊ณ ์๋ฃ
https://velog.io/@hyeseong-dev/%EB%A6%AC%EB%88%85%EC%8A%A4-ssh%EB%9E%80