๋ฆฌ๋ ์ค์ ๊ถํ ๊ด๋ฆฌ๋ ์ฌ์ฉ์์ ๊ทธ๋ฃน์ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ค.
*Ubuntu/Debian ๊ธฐ์ค sudo adduser <์ ์ ๋ช
> ๋ช
๋ น์ด๋ ์ฌ์ฉ์๋ฅผ ์์ฑํ๋ ๋ช
๋ น์ด์ด๋ค. ๋น๋ฐ๋ฒํธ๋ฅผ ์ค์ ํ ํ Full Name / Room / Phone / Other ๊ฐ์ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ์
๋ ฅํ๋ค.
ํด๋น ์ ๋ณด๋ /etc/passwd ํ์ผ์ GECOS ํ๋์ ์ ์ฅ๋๋ฉฐ ํ์ ์์ ๊ฒฝ์ฐ Enter๋ก ์๋ตํ ์ ์๋ค.
ํ์ฌ ๋ก๊ทธ์ธ๋ ๊ณ์ ์ ์ ๋ณด๋ฅผ ํ์ธํ๊ธฐ ์ํด ๋ค์๊ณผ ๊ฐ์ ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ ์ ์๋ค.

whoami ๋ช
๋ น์ด๋ ํ์ฌ ๋ก๊ทธ์ธํ ์ฌ์ฉ์๋ช
์ ์ถ๋ ฅํ๋ค. id๋ ํ์ฌ ์ฌ์ฉ์์ UID/GID์ ์์ ๊ทธ๋ฃน๋ค์ ์ถ๋ ฅํ๊ณ groups <์ ์ ๋ช
> ๋ช
๋ น์ด๋ ํด๋น ์ฌ์ฉ์๊ฐ ์ํ ๊ทธ๋ฃน์ ๋ชฉ๋ก์ ์ถ๋ ฅํ๋ค.
๋ํ sudo ๊ถํ์ด ์๋ ๊ฒฝ์ฐ sudo -iu <์ ์ ๋ช
> ๋ช
๋ น์ด๋ก ๋ค๋ฅธ ์ฌ์ฉ์๋ก ์ ํํ ์ ์๋ค.

ls -lh ๋ช
๋ น์ด๋ ํ์ผ๊ณผ ๋๋ ํฐ๋ฆฌ์ ๊ถํ, ์์ ์, ๊ทธ๋ฃน, ํฌ๊ธฐ ๋ฑ์ ํจ๊ป ์ถ๋ ฅํ๋ค. project ํด๋์ ๊ฒฝ์ฐ ์์ ์/๊ทธ๋ฃน์ด root:root ์ด๊ณ ๊ถํ์ด *755์ด๊ธฐ ๋๋ฌธ์ ์ผ๋ฐ ์ฌ์ฉ์๋ ์ฐ๊ธฐ(w) ๊ถํ์ด ์์ด Permission denied๊ฐ ๋ฐ์ํ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
*๊ถํ 8์ง์ ํ๊ธฐ
๊ฐ ์๋ฆฌ(์์ ์/๊ทธ๋ฃน/๊ธฐํ)๋ฅผ 8์ง์๋ก ํํํ ๊ฒ r = 4 (read) w = 2 (write) x = 1 (execute) ๋ฅผ ์๋ฏธํ๋ค.
ex) 755
์์ ์: 7 = 4 + 2 + 1 = rwx
๊ทธ๋ฃน: 5 = 4 + 1 = r-x
๊ธฐํ: 5 = 4 + 1 = r-x
๋ฐ๋ผ์ sudo ๊ถํ์ด ์๋ ๊ณ์ ์ผ๋ก ์ ํํ ํ chown ๋ช
๋ น์ด๋ก ์์ ๊ถ์ ๊ถํ์ด ์๋ ๊ณ์ ์ผ๋ก ๋ณ๊ฒฝํ์๋ค.

ls -lh ๋ช
๋ น์ด์ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด ๊ถํ ๋ณ๊ฒฝ์ด ๋ฐ์๋ ๊ฒ์ ํ์ธํ ์ ์๊ณ ์ดํ ํ์ผ ์์ฑ๋ ์ ์์ ์ผ๋ก ๋ ๊ฒ์ ์ ์ ์๋ค.
chown์ ํ์ผ์ด๋ ๋๋ ํฐ๋ฆฌ์ ์์ ์(owner)์ ๊ทธ๋ฃน(group)์ ๋ณ๊ฒฝํ๋ ๋ช
๋ น์ด์ด๋ค.
chown user file # ์์ ์๋ง ๋ณ๊ฒฝ (๊ทธ๋ฃน ์ ์ง)
chown user:group file # ์์ ์์ ๊ทธ๋ฃน ๋ณ๊ฒฝ
chown user: file # ์์ ์ ๋ณ๊ฒฝ + ๊ทธ๋ฃน์ ํด๋น ์ฌ์ฉ์์ ์ฃผ ๊ทธ๋ฃน์ผ๋ก ๋ณ๊ฒฝ
chown :group fileโ # ๊ทธ๋ฃน๋ง ๋ณ๊ฒฝ
ํจ๊ป ์์ฃผ ์ฌ์ฉ๋๋ ์ต์ ์ ๋ค์๊ณผ ๊ฐ๋ค.
[์์]
# ๋๋ ํฐ๋ฆฌ ์์ ์/๊ทธ๋ฃน์ bluecool๋ก ๋ณ๊ฒฝ
sudo chown bluecool:bluecool /srv/project
# ์ฌ๊ท์ ์ผ๋ก ํ์๊น์ง ๋ชจ๋ ๋ณ๊ฒฝ
sudo chown -R bluecool:bluecool /srv/project
# ๊ทธ๋ฃน๋ง devteam์ผ๋ก ๋ณ๊ฒฝ
sudo chown :devteam /srv/project
์์ ์ ๋ณ๊ฒฝ์ root ๋๋ sudo ๊ถํ์ด ํ์ํ๋ค. ๋ํ ํ์ผ์ ์์ฑํ๊ฑฐ๋ ์ญ์ ํ๋ ค๋ฉด ๋ถ๋ชจ ๋๋ ํฐ๋ฆฌ์ w(์ฐ๊ธฐ) + x(์ง์ ) ๊ถํ์ด ์์ด์ผ ํ๋ค.
chmod๋ ํ์ผ ๋๋ ๋๋ ํฐ๋ฆฌ์ ๊ถํ(rwx)์ ๋ณ๊ฒฝํ๋ ๋ช
๋ น์ด์ด๋ค.
chmod [์ต์
] <๋ชจ๋> <๊ฒฝ๋ก...>๊ถํ ์ค์ ๋ฐฉ๋ฒ์ ์ซ์(8์ง์) ๋ชจ๋, ๊ธฐํธ ๋ชจ๋ ๋ ๊ฐ์ง๊ฐ ์๋ค.
[๊ธฐํธ ๋ชจ๋ ์์]
๋์: u(์์ ์) g(๊ทธ๋ฃน) o(๊ธฐํ) a(์ ์ฒด)
์ฐ์ฐ: +(์ถ๊ฐ) -(์ ๊ฑฐ) =(์ ํํ ์ง์ )
๊ถํ: r(4) ์ฝ๊ธฐ / w(2) ์ฐ๊ธฐ / x(1) ์คํ
[์์]
# ์คํฌ๋ฆฝํธ ์คํ ๊ถํ ๋ถ์ฌ
chmod +x deploy.sh
# ๋๋ ํฐ๋ฆฌ ๊ณต์ (๊ทธ๋ฃน ์ฐ๊ธฐ ํ์ฉ + setgid)
chmod 2775 /srv/project
# ๋ฏผ๊ฐ ํ์ผ/SSH ํค ๊ถํ ์ค์ (์์ ์๋ง rw)
chmod 600 ~/.ssh/id_rsa
# ๊ธฐํธ ๋ชจ๋๋ก ์ ํํ ์ง์
chmod u=rwx,g=rx,o=rx app
*ํน์ ๊ถํ ๋นํธ
๋ฆฌ๋
์ค์๋ ์ผ๋ฐ ๊ถํ ์ธ์ ํน์ ๋นํธ๊ฐ ์กด์ฌํ๋ค.
1) setuid (4xxx)
chmod 4755 fileโ์คํ ํ์ผ์ ํ์ผ ์์ ์ ๊ถํ์ผ๋ก ์คํ๋๋ค.
2) setgid (2xxx)
chmod 2775 directoryํ์ผ: ์คํ ์ ํ์ผ์ ๊ทธ๋ฃน ๊ถํ์ผ๋ก ๋์
๋๋ ํฐ๋ฆฌ: ํด๋น ๋๋ ํฐ๋ฆฌ์์ ์์ฑ๋๋ ํ์ผ์ด ๋๋ ํฐ๋ฆฌ์ ๊ทธ๋ฃน์ ์์
์ฃผ๋ก ํ์
๋๋ ํฐ๋ฆฌ์์ ๋ง์ด ์ฌ์ฉ๋๋ค.
3) sticky bit (1xxx)
chmod 1777 directoryโ๋๋ ํฐ๋ฆฌ์์ ํ์ผ ์์ ์, ๋๋ ํฐ๋ฆฌ ์์ ์, root ๋ง ํด๋น ํ์ผ์ ์ญ์ ํ๊ฑฐ๋ ์ด๋ฆ์ ๋ณ๊ฒฝํ ์ ์๋ค.
