๐ข ์ ๋ฒ์ SSH KEY๋ก EC2 ๋จธ์ ์ ์ ์ ํ๋ ๊ณผ์ ์ ํฌ์คํ ํ์๋ค.
์ค๋์ ๊ทธ ๊ณผ์ ์์ ์ฐ์๋ SSH / SSH Key / chmod ๋ฅผ ์์ธํ ๊ณต๋ถํด๋ณด์๋ค.
๐ SSH
์ฐ์ , SSH (Secure Shell) ๋ FTP ๋ FTP์ ์ ์ฌํ ์ผ๋ฐ์ ์ธ ํ๋กํ ์ฝ์ด๋ผ๊ณ ํ ์ ์๋ค. ์ด๋๊ฐ์๋ "์๋ณธ์์ ๋์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๋ฐ ์ฌ์ฉ๋๋ HTTP " ์ผ๋ก SSH๋ฅผ ์ค๋ช ํ๊ธฐ๋ํ๋ค. SSH์ ๋ฐ๋ ๊ฐ๋ ์ผ๋ก๋ RSH(Remote Shell)์ด ์๋ค. ์ฆ, ์ํ์ดํ ์ (SSH)๊ณผ ์ํ์ดํ์ง ์์ ์ (RSH)์ด๋ค. rsh๋ ์ํธ๋ฅผ ์ ๋ ฅํ๋ฉด ๊ทธ๊ฑธ ๊ทธ๋๋ก ๋คํธ์ํฌ์ ๋ด๋ณด๋ธ๋ค. ๊ทธ๋์ ๋คํธ์ํฌ๋ฅผ ๊ฐ์ํ๋ค๋ณด๋ฉด ์ฌ๋ฌ ์ฌ๋์ ์ํธ๋ฅผ ๋ชจ์ ์๋ ์๊ณ rsh ๊ฒฝ์ ๋ก ๋ณด๊ณ ์๋ ํ์ผ ๋ด์ฉ๋ ๋ค์ฌ๋ค๋ณผ ์ ์๊ฒ ๋๋ค. ๊ทธ๋์ ํต์ ์ ๋ชจ๋ ์ํธํํด์ ์์ ํ ์ ๋ก ๊ฐ๊ฒํ๋ SSH๊ฐ ๋ง๋ค์ด์ง ๊ฒ์ด๋ค.
ํํธ, OpenSSH ๋ ๋คํธ์ํฌ์์ ์๊ฒฉ ์๋ฒ์ ์ก์ธ์คํ๊ณ ์ ์ด ํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
๐ wiki ๋ฐฑ๊ณผ
OpenSSH๋ ์ํ์ด ์ ธ ํ๋กํ ์ฝ์ ์ด์ฉํ์ฌ ์ํธํ๋ ํต์ ์ธ์ ์ ์ปดํจํฐ ๋คํธ์ํฌ์ ์ ๊ณตํ๋ ์ปดํจํฐ ํ๋ก๊ทธ๋จ์ ๋ชจ์์ด๋ค. SSH ์ปค๋ฎค๋์ผ์ด์ ์ค ์ํ๋ฆฌํฐ๊ฐ ์ ๊ณตํ๋ ์ฌ์ ์ํ์ด ์ ธ ์ํํธ์จ์ด ์ ํ๊ตฐ์ ๋์ฒดํ ๋ชฉ์ ์ผ๋ก ์คํ ์์ค๋ก ์์ฑ๋์๋ค.
SSH์ ์ฉ๋ & ์ด์
- ๋ค๋ฅธ pc์ ๋คํธ์ํธ ๊ฒฝ์ ๋ก ๋ก๊ทธ์ธํด์ ์๊ธฐ ์์ ์๋ pc์ฒ๋ผ ์กฐ์ํ ์ ์๋ค.
- ํต์ ๊ฒฝ๋ก๊ฐ SSHํฐ๋ ์์์ ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ ์์ ํ๊ณ , ip์ฃผ์๋ง ์๋ฉด ๋ฆฌ๋ชจํธ ์กฐ์์ด ๊ฐ๋ฅํ๋ค.
- ํ์ฌ ๋ด pc๋ ์ด๋๊ฐ์ ๋๊ตฐ๊ฐ๊ฐ ์กฐ์ํ ์ ์๋ค๋ ์๊ธด๋ฐ, SSH์๋ฒ๊ฐ ์คํ๋์ด ์๋ค๋ฉด ๊ฐ๋ฅํ๋ค.
- ๊ทธ๋์ ๋ณดํต ๋ช๊ฐ์ง ์ ์ฝ์ ๋๊ณ ์ด์ฉํ๋ค. -> chmod๋ฅผ ์ด์ฉํ ๊ถํ ์ค์
๐ SSH KEY.pem
- Secure Shell ์ ์์ ์ํ ์ธ์ฆ ๋ฐฉ๋ฒ : SSH KEY
- AWS ํค ํ์ด ์์ฑ์ ํตํด EC2 ์ ๊ทผ์ ํ ์ ์๋๋ฐ ๊ทธ๋ ๋ฐ๊ธ๋ฐ์ ํค.
- ์ ํค ํ์ด(key pair)? ์ด ํค๋ ๋น ๋์นญํค์ด๊ธฐ๋๋ฌธ์ ๊ฐ์ธํค์ ๊ณต๊ฐํค๋ก ์ด๋ฃจ์ด์ง๋ค. ๊ฐ์ธํค๋ SSH์ ์์ ํ๋ ค๋ ์ฃผ์ฒด์ธ ์ฌ์ฉ์(๋)์๊ฒ ์ฃผ์ด์ง๊ณ , ๊ณต๊ฐํค๋ ์ ์ํ๊ณ ์ํ๋ ๋์์ธ EC2๋จธ์ ์ ์ค์น๋๋ค. EC2๋จธ์ ์ ์ค์นํ๋ ๊ณผ์ ์์ ์ด ๊ณต๊ฐํค๋ฅผ ๋ฑ๋กํ ์ ์๋ค. (์์ธํ ๊ฑด ์์ ๋งํฌ์์ ํ์ธํ ์ ์๋ค)
- ๊ณต๊ฐํค๋ก ์ํธํ๋ ๊ฒ์ ๊ฐ์ธํค๋ก, ๊ฐ์ธํค๋ก ์ํธํ๋ ๊ฒ์ ๊ณต๊ฐํค๋ก ํ ์ ์๋ค๋ ์๊ธฐ๋ค.
- ์ด ํคํ์ด๋ฅผ ์ด์ฉํด์ ec2 ๋จธ์ ์ ์ ์ํ๋ คํ ๋,
- ํด๋น ํคํ์ด๊ฐ ์๋ ๊ฒฝ๋ก์์ "SSH -i" ๋ฅผ ์ด์ฉํด SSH์ ์ ๊ทผํ๋ค. ๊ฐ์ธํค๋ฅผ ์ด์ฉํ ๋ ์ฌ์ฉํ๋ ๋ช ๋ น์ด"-i"๋ค.
"ssh -i ./ํคํ์ด์ด๋ฆ.pem ubuntu@ํผ๋ธ๋ฆญipv4์ฃผ์"
- ํคํ์ด ์ด๋ฆ ์์ .pem ์ ํคํ์ด ์์ฑ์ ์ค์ ํ ํค ํ์์ด๋ค.
- ํ๋ผ์ด๋น ํค ํ์ผ ํ์(Private key file format)์์ ํ๋ผ์ด๋น ํค๋ฅผ ์ ์ฅํ ํ์์ ์ ํํ๋ค. OpenSSH์์ ์ฌ์ฉํ ์ ์๋ ํ์์ผ๋ก ํ๋ผ์ด๋น ํค๋ฅผ ์ ์ฅํ๋ ค๋ฉด pem์ ์ ํํ๋ค. PuTTY์์ ์ฌ์ฉํ ์ ์๋ ํ์์ผ๋ก ํ๋ผ์ด๋น ํค๋ฅผ ์ ์ฅํ๋ ค๋ฉด ppk๋ฅผ ์ ํํฉ๋๋ค.
๐ wiki ๋ฐฑ๊ณผ
PuTTY๋ SSH, ํ ๋ท, rlogin, raw TCP๋ฅผ ์ํ ํด๋ผ์ด์ธํธ๋ก ๋์ํ๋ ์์ ๋ฐ ์คํ ์์ค ๋จ๋ง ์๋ฎฌ๋ ์ดํฐ ์์ฉ ํ๋ก๊ทธ๋จ์ด๋ค.
-
- ํค ํ์ด ์ ํ(Key pair type)์์ RSA ๋๋ ED25519๋ฅผ ์ ํํ ์ ์๋๋ฐ ED25519 ํค๋ Windows ์ธ์คํด์ค, EC2 ์ธ์คํด์ค Connect ๋๋ EC2 ์ง๋ ฌ ์ฝ์์์ ์ง์๋์ง ์๋๋ค.
- ์ด์จ๋ ์ด SSH ํค๋ก EC2์ ์ ์ํ๋ คํ ๋ ๊ณต๊ฐํค์ ๋ํ ํผ๋ฏธ์ ์ด ๋๋์ด๋ ๋๋ค. ( permission denied )
- ์๋๋ฉด SSH๋ ๋ณด์ํค๋ก ๊ต์ฅํ ์ค์ํ ํค์ด๊ธฐ๋๋ฌธ์ ์ด ํค๋ฅผ ์ต์๊ถํ์ผ๋ก ์ค์ ํด์ฃผ์ด์ผํ๋ค. ๊ทธ๋์ผ SSH์ ์์ ํด๋นํค๋ก ์ ์ํ ์ ์๋ค. ๊ฐ์ธํค ํ์ผ์ ๋ํด ์ต์๊ถํ์ ์ค์ ํด์ฃผ์.
๐ chmod (change mode)
- ๋ฆฌ๋ ์ค(Linux)๋ ํ๋์ ์ปดํจํฐ๋ฅผ ์ฌ๋ฌ ์ฌ๋์ด ์ฌ์ฉํ ์ ์๋ ๋ฉํฐ์ ์ ์ด์์ฒด์ (OS)์ด๊ธฐ ๋๋ฌธ์ ๊ถํ ๊ด๋ฆฌ๊ฐ ๋งค์ฐ ์ค์ํ๋ค. ํ์ผ๊ณผ ๋๋ ํ ๋ฆฌ์ ๊ถํ์ ๋ณ๊ฒฝํ๊ณ ์์ ๊ถ์ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ด ํ์ํ ์ด์ ๋ค.
- macOS ๋๋ Linux ์ปดํจํฐ์์ SSH ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ Linux ์ธ์คํด์ค์ ์ฐ๊ฒฐํ๋ ค๋ฉด ์ฌ์ฉ์๋ง ํ๋ผ์ด๋น ํค ํ์ผ์ ์ฝ์ ์ ์๋๋ก ๋ค์ ๋ช ๋ น์ผ๋ก ํด๋น ํ์ผ์ ๊ถํ์ ์ค์ ํด์ผํ๋ค.
- ๊ฐ์ธํค๋ ์์ ์์ ๋ํด์ ์ฝ๊ธฐ ์ฐ๊ธฐ ๊ถํ์ ์ ์ธํ ๋ค๋ฅธ ๊ถํ์ ์์ ์ฃผ์ด์ผํ๋ค.
- ๊ทธ๋ด ๋ ์ฌ์ฉํ๋ ๋ช ๋ น์ด๊ฐ chmod ๋ค.
- chmod๋ change mode์ ์ถ์ฝ์ด๋ก, ๋์ ํ์ผ๊ณผ ๋๋ ํ ๋ฆฌ์ ์ฌ์ฉ๊ถํ์ ๋ณ๊ฒฝํ ๋ ์ฌ์ฉํ๋ค.
- rw-r—r ์์ ์์๋๋ก ์์ ์, ๊ทธ๋ฃน, ์ ์ผ์์ ๊ถํ์ด๋ค. ์ด๊ฑด ๊ฐ์ธํค๊ฐ ์๋ ๊ฒฝ๋ก์์ ls -l ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ ๋ ์ ์ ์๋ค.
- ls -l ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ํ์ผ, ๋๋ ํ ๋ฆฌ ๋ฆฌ์คํธ๋ฅผ ์ถ๋ ฅํ๋ฉด ๊ถํ(ํผ๋ฏธ์ , ํ๊ฐ๊ถ)์ ํ์ธํ ์ ์๋ค.
rwxr-xr-x pi pi 5720 Jul 3 20:06 a.out
ํ์ผ์ ๊ถํ์ '-rwxr-xr-x'์ผ๋ก ํ์ธํ ์ ์๊ณ
์์ ๊ถ์ 'pi pi'์ผ๋ก ํ์ธํ ์ ์๋ค.
์์ ์๋ pi๋ ์ฌ์ฉ์๋ฅผ ๋ํ๋ด๊ณ , ๋ค์ ์๋ pi๋ ๊ทธ๋ฃน์ ๋ํ๋ธ๋ค.
rwx r-x r-x
์ ์ ๋ณด๋ 4๋ถ๋ถ์ผ๋ก ๋๋ ์ ์๋ค.
ํ์ผ(-), ๋๋ ํ ๋ฆฌ(d)๋ฅผ ๊ตฌ๋ถ
rwx ์ฌ์ฉ์(owner, ์์ ์) ๊ถํ(ํผ๋ฏธ์ )
r-x ๊ทธ๋ฃน(group) ๊ถํ
r-x ๋ค๋ฅธ ์ฌ์ฉ์(other) ๊ถํ
rwx๋ ๊ฐ๊ฐ ์ฝ๊ธฐ(read), ์ฐ๊ธฐ(write), ์คํ(execute) ๊ถํ
r์ ํ์ผ ์ฝ๊ธฐ = 4
w๋ ํ์ผ ์ฐ๊ธฐ = 2
x๋ ํ์ผ ์คํ = 1
chmod g+w test.c : ๊ทธ๋ฃน์ ์ฐ๊ธฐ ๊ถํ์ ์ค๋ค.
chmod o-r test.c : ๋ค๋ฅธ ์ฌ์ฉ์์๊ฒ ์ฝ๊ธฐ ๊ถํ์ ๋นผ์๋๋ค.
๐ u ์ฌ์ฉ์, g ๊ทธ๋ฃน, o ๋ค๋ฅธ์ฌ์ฉ์, a ์ ๋ถ์๊ฒ ๊ถํ์ ์ง์ ํ ์ ์๊ณ
๋ํ๊ธฐ(+)๋ฅผ ์ฌ์ฉํ์ฌ ๊ถํ์ ์ถ๊ฐํ๊ณ , ๋นผ๊ธฐ(-)๋ฅผ ์ฌ์ฉํ์ฌ ๊ถํ์ ์ ๊ฑฐํ ์์๋ค.
๐ ๊ทผ๋ฐ ์ด ๋ฐฉ์์ ์ข ๋ฒ๊ฑฐ๋กญ๊ฒ ๋๊ปด์ง๋ค. ๋ ์ฝ๊ฒ ๊ถํ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์
๐ ์ซ์๋ฅผ ํ์ฉํ์ฌ ์ฌ์ฉ์, ๊ทธ๋ฃน, ๋ค๋ฅธ ์ฌ์ฉ์์ ๊ถํ์ ํ๋ฒ์ ์ง์ ํด๋ณด์.
chmod 000 test.pem
์ฌ์ฉ์, ๊ทธ๋ฃน, ๋ค๋ฅธ์ฌ์ฉ์์ ๋ชจ๋ ๊ถํ์ ์ ๊ฑฐํ๋ค.
chmod 777 test.pem
์ฌ์ฉ์, ๊ทธ๋ฃน, ๋ค๋ฅธ์ฌ์ฉ์์ ๋ชจ๋ ๊ถํ์ ์ถ๊ฐํ๋ค.
chmod 700 test.pem
์ฌ์ฉ์์๊ฒ๋ง ๋ชจ๋ ๊ถํ์ ์ค๋ค.
chmod 744 test.pem
์ฌ์ฉ์์๊ฒ๋ ๋ชจ๋ ๊ถํ์ ์ฃผ๊ณ , ๊ทธ๋ฃน, ๋ค๋ฅธ ์ฌ์ฉ์์๊ฒ๋ ์ฝ๊ธฐ ๊ถํ๋ง ์ค๋ค.
๋๋ ์ฌ์ฉ์์๊ฒ ์ฝ๊ธฐ, ์ฐ๊ธฐ ๊ถํ๋ง ํ ๋นํ๊ธฐ์ํด ๋ค์๊ณผ ๊ฐ์ ๊ถํ์ ์ค์ ํด์ฃผ์๋ค.
chmod 600 ํคํ์ด์ด๋ฆ.pem
์ฌ๊ธฐ๊น์ง ๊ถํ ์ค์ ์ ๋ง์ณค๋ค๋ฉด ํด๋น ์ธ์คํด์ค์ ๋ค์ ์ ์ํด๋ณด์ :)
'์ด๋ก > DevOps' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[AWS] API Gateway (2) | 2021.11.15 |
---|---|
[AWS] CloudWatch Log Insights Query (0) | 2021.11.14 |
[DevOps] Curl / Curl ๋ช ๋ น์ด (0) | 2021.10.31 |
[AWS] SSH ํค ๋ฑ๋ก ๋ฐ EC2 ์ ์ ๋ฐฉ๋ฒ (0) | 2021.10.05 |
[DevOps] WSL ์๊ฐ , ์ฌ์ฉ ์ค์ Ubuntu 20.04 LTS ์ค์น / WSL2 ์ฌ์ฉ ์ค์ / Windows Terminal ์ค์น (0) | 2021.10.05 |