2025-09-15 15:46:20
๋ฐ˜์‘ํ˜•

๐Ÿ‘ค ๋ฆฌ๋ˆ…์Šค ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ ์ •๋ฆฌ

๋ฆฌ๋ˆ…์Šค๋Š” ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ€ํ‹ฐ์œ ์ € ์‹œ์Šคํ…œ์ด์—์š”.
๊ทธ๋ž˜์„œ "๋ˆ„๊ฐ€ ๋กœ๊ทธ์ธํ–ˆ๋Š”์ง€, ์–ด๋–ค ๊ถŒํ•œ์„ ๊ฐ–๋Š”์ง€"๋ฅผ ์‚ฌ์šฉ์ž ๊ณ„์ • ๊ด€๋ฆฌ๋กœ ์ฒ ์ €ํžˆ ํ†ต์ œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ”‘


1๏ธโƒฃ ์‚ฌ์šฉ์ž ๊ณ„์ • ๊ด€๋ จ ํŒŒ์ผ

๋ฆฌ๋ˆ…์Šค์—์„œ๋Š” ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํŒŒ์ผ์— ์ €์žฅํ•ด์š”.

ํŒŒ์ผ์„ค๋ช…
/etc/passwd ๊ณ„์ • ๊ธฐ๋ณธ ์ •๋ณด (ID, UID, GID, ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ, ๋กœ๊ทธ์ธ ์…ธ)
/etc/shadow ์•”ํ˜ธํ™”๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ํŒจ์Šค์›Œ๋“œ ๋งŒ๋ฃŒ ์ •๋ณด
/etc/login.defs UID/GID ๋ฒ”์œ„, ๋น„๋ฐ€๋ฒˆํ˜ธ ์ •์ฑ… ๊ธฐ๋ณธ๊ฐ’
/etc/group ๊ทธ๋ฃน ์ •๋ณด
/etc/gshadow ๊ทธ๋ฃน ์•”ํ˜ธ ๋ฐ ๋ฉค๋ฒ„ ์ •๋ณด
 
flowchart TD A[/etc/passwd] -->|๊ณ„์ •| U[์‚ฌ์šฉ์ž ID, ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ] B[/etc/shadow] -->|๋ณด์•ˆ| P[๋น„๋ฐ€๋ฒˆํ˜ธ ํ•ด์‹œ, ๋งŒ๋ฃŒ์ผ] C[/etc/group] -->|๊ทธ๋ฃน| G[๊ทธ๋ฃน ์ •๋ณด] D[/etc/login.defs] -->|์ •์ฑ…| L[UID/GID ๋ฒ”์œ„, ์ •์ฑ…]

2๏ธโƒฃ ์‚ฌ์šฉ์ž ๊ณ„์ • ๊ด€๋ฆฌ ๋ช…๋ น์–ด


๋ช…๋ น์–ด ์„ค๋ช…
useradd ์‚ฌ์šฉ์ž ์ถ”๊ฐ€
usermod ์‚ฌ์šฉ์ž ์ •๋ณด ์ˆ˜์ •
userdel ์‚ฌ์šฉ์ž ์‚ญ์ œ
passwd ์•”ํ˜ธ ์„ค์ • ๋ฐ ๊ณ„์ • ์ž ๊ธˆ
chage ๋น„๋ฐ€๋ฒˆํ˜ธ ๋งŒ๋ฃŒ ์ •์ฑ… ๊ด€๋ฆฌ

๐Ÿง‘‍๐Ÿ’ป ์‹ค์Šต ์˜ˆ์‹œ

```
# 1. ์‚ฌ์šฉ์ž ์ƒ์„ฑ ๋ฐ
ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ(-m ์˜ต์…˜)
sudo useradd -m user1
 
# 2. ์•”ํ˜ธ ์„ค์ •
sudo passwd user1 # ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ ํ›„ Enter
 
# 3. UID ๋ณ€๊ฒฝ
sudo usermod -u 2001 user1
 
# user1 ๊ณ„์ •์˜ UID๋ฅผ 2001๋กœ ๋ณ€๊ฒฝ
# 4. ์‚ฌ์šฉ์ž ์‚ญ์ œ (-r ์˜ต์…˜: ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ๋„ ๊ฐ™์ด ์‚ญ์ œ)
sudo userdel -r user1
```

3๏ธโƒฃ ๊ทธ๋ฃน ๊ด€๋ฆฌ ๋ช…๋ น์–ด

๋ช…๋ น์–ด์„ค๋ช…
groupadd ๊ทธ๋ฃน ์ƒ์„ฑ
groupmod ๊ทธ๋ฃน ์ˆ˜์ •
groupdel ๊ทธ๋ฃน ์‚ญ์ œ
gpasswd ๊ทธ๋ฃน ์•”ํ˜ธ ์„ค์ •, ๋ฉค๋ฒ„ ์ถ”๊ฐ€/์‚ญ์ œ
```
# ๊ทธ๋ฃน ์ƒ์„ฑ
sudo groupadd devteam
 
# ๊ทธ๋ฃน ์ด๋ฆ„ ๋ณ€๊ฒฝ
sudo groupmod -n devops devteam
 
# ๊ทธ๋ฃน ์‚ญ์ œ
sudo groupdel devops
 
# ๊ทธ๋ฃน์— ์‚ฌ์šฉ์ž ์ถ”๊ฐ€
sudo gpasswd -a user1 devops
 
# ๊ทธ๋ฃน์—์„œ ์‚ฌ์šฉ์ž ์ œ๊ฑฐ
sudo gpasswd -d user1 devops
```

4๏ธโƒฃ ์‚ฌ์šฉ์ž ์ •๋ณด ๊ด€๋ฆฌ ๋ช…๋ น์–ด

๋ช…๋ น์–ด์„ค๋ช…
who / w ๋กœ๊ทธ์ธ ์‚ฌ์šฉ์ž ํ™•์ธ
last ์ตœ๊ทผ ๋กœ๊ทธ์ธ ๊ธฐ๋ก ํ™•์ธ
id UID, GID, ๊ทธ๋ฃน ํ™•์ธ
groups ์†ํ•œ ๊ทธ๋ฃน ํ™•์ธ
sudo ํŠน์ • ๊ถŒํ•œ ์œ„์ž„
chown ํŒŒ์ผ ์†Œ์œ ์ž ๋ณ€๊ฒฝ
chgrp ํŒŒ์ผ ๊ทธ๋ฃน ๋ณ€๊ฒฝ

๐Ÿง‘‍๐Ÿ’ป ์‹ค์Šต ์˜ˆ์‹œ

 
# ํ˜„์žฌ ๋กœ๊ทธ์ธ ์‚ฌ์šฉ์ž ํ™•์ธ who w last | head
# ์ตœ๊ทผ ๋กœ๊ทธ์ธ ๊ธฐ๋ก ์ƒ์œ„ 10์ค„
# ์‚ฌ์šฉ์ž UID, GID ํ™•์ธ id user1 groups user1
# ํŒŒ์ผ ์†Œ์œ ์ž ๋ณ€๊ฒฝ sudo chown user1 test.txt
# ํŒŒ์ผ ๊ทธ๋ฃน ๋ณ€๊ฒฝ sudo chgrp devops test.txt
# sudo ๊ถŒํ•œ ๋ถ€์—ฌ (visudo ์‹คํ–‰) sudo visudo
# user2 ALL=/sbin/useradd,/sbin/usermod


5๏ธโƒฃ ํ˜„์—…์—์„œ ์ž์ฃผ ์“ฐ๋Š” ๊ฒƒ๋“ค ๐Ÿ”‘

  • id, groups → ๊ณ„์ • ๊ถŒํ•œ ๋ฐ ๊ทธ๋ฃน ํ™•์ธ
  • passwd -l user → ๊ณ„์ • ์ž ๊ธˆ (๋ณด์•ˆ ์‚ฌ๊ณ  ๋ฐฉ์ง€)
  • sudo visudo → ํŠน์ • ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œํ•œ๋œ ๊ถŒํ•œ ๋ถ€์—ฌ
  • chown, chgrp → ํŒŒ์ผ ์ ‘๊ทผ ๊ถŒํ•œ ๊ด€๋ฆฌ
  • /etc/shadow → ๋ณด์•ˆ ๊ด€๋ จ ๋ฌธ์ œ(๋น„๋ฒˆ ๋งŒ๋ฃŒ) ํ™•์ธ

โœ… ์ •๋ฆฌ

  • ๋ฆฌ๋ˆ…์Šค๋Š” ๊ณ„์ •๊ณผ ๊ทธ๋ฃน์œผ๋กœ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์„ ๊ด€๋ฆฌํ•จ
  • /etc/passwd, /etc/shadow ๊ฐ€ ํ•ต์‹ฌ ํŒŒ์ผ
  • useradd/userdel/usermod, groupadd/groupdel ๋กœ ๊ณ„์ •/๊ทธ๋ฃน ๊ด€๋ฆฌ
  • ํ˜„์—…์—์„œ๋Š” ๊ถŒํ•œ ์œ„์ž„(sudo), ๊ณ„์ • ์ž ๊ธˆ(passwd -l), ๋กœ๊ทธ์ธ ๊ธฐ๋ก ํ™•์ธ(last) ์ด ๋งŽ์ด ์“ฐ์ž„

๐Ÿ‘‰ ์ด๋ ‡๊ฒŒ ์ •๋ฆฌํ•˜๋ฉด,  "๋ฆฌ๋ˆ…์Šค์—์„œ ์‚ฌ์šฉ์ž/๊ทธ๋ฃน ๊ด€๋ฆฌ = ์‹ ๋ถ„์ฆ ๋งŒ๋“ค๊ธฐ, ์ง€๊ฐ‘ ๊ด€๋ฆฌํ•˜๊ธฐ" ์ •๋„๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์–ด์š” ๐Ÿ˜Š

๋ฐ˜์‘ํ˜•