๊ฐœ๋ฐœ๋…ธํŠธ/Linux

[Linux] ๋ฆฌ๋ˆ…์Šค sudo ๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฒ•๊ณผ sudoers ์ดํ•ดํ•˜๊ธฐ: ๊ด€๋ฆฌ์ž ๊ถŒํ•œ ๊ธฐ์ดˆ ๊ฐ€์ด๋“œ ๐Ÿงฉ

๋กœ๋กœ๋ฝœ 2026. 1. 6. 07:30

๋ฆฌ๋ˆ…์Šค sudo ๋ช…๋ น์–ด๋Š” root ๊ถŒํ•œ์ด ํ•„์š”ํ•œ ์ž‘์—…์„ ์•ˆ์ „ํ•˜๊ฒŒ ์‹คํ–‰ํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ํ•„์ˆ˜ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. sudo ๊ฐœ๋…, ์‚ฌ์šฉ๋ฒ•, ๋ณด์•ˆ ํŒ๊นŒ์ง€ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌ๋ˆ…์Šค ์“ฐ๋‹ค ๋ณด๋ฉด ๊ผญ ํ•œ ๋ฒˆ์€ ๋งˆ์ฃผ์นฉ๋‹ˆ๋‹ค.

  • ํŒจํ‚ค์ง€ ์„ค์น˜๊ฐ€ ์•ˆ ๋˜๊ณ 
  • ์„ค์ • ํŒŒ์ผ ์ €์žฅ์ด ๋ง‰ํžˆ๊ณ 
  • ์„œ๋น„์Šค ์žฌ์‹œ์ž‘์ด ๊ฑฐ๋ถ€๋˜๊ณ 
  • “Permission denied / Operation not permitted”๋งŒ ๋ณด์ผ ๋•Œ

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

Linux ์‚ฌ์šฉ์ž๊ฐ€ sudo ํ‚ค๋กœ ROOT ๊ถŒํ•œ ๋ฌธ์„ ์—ฌ๋Š” ์žฅ๋ฉด. Permission Denied ์˜ค๋ฅ˜๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ์—ด์‡  ์—ญํ• ์„ ํ‘œํ˜„
AI ์ƒ์„ฑํ˜• ์ด๋ฏธ์ง€ - sudo: ๋ฆฌ๋ˆ…์Šค์—์„œ ๊ถŒํ•œ ์ƒ์Šน์˜ ์—ด์‡ ๋ฅผ ์ฅ๋‹ค


1. sudo๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ : “๊ถŒํ•œ ์ƒ์Šน + ๊ธฐ๋ก”

sudo๋Š” ๋‹จ์ˆœํžˆ “๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰”์ด ์ „๋ถ€๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

  • ํ•„์š”ํ•œ ๋ช…๋ น๋งŒ ๋”ฑ ํ•œ ๋ฒˆ ๊ถŒํ•œ ์ƒ์Šน
  • ๋ˆ„๊ฐ€, ์–ธ์ œ, ์–ด๋–ค ๋ช…๋ น์„ ํ–ˆ๋Š”์ง€ ๋กœ๊ทธ๋กœ ๋‚จ๊น€(๊ฐ์‚ฌ/audit)
  • ํŒ€/์„œ๋ฒ„ ์šด์˜์—์„œ “์ฑ…์ž„ ์ถ”์ ”๊ณผ “์‹ค์ˆ˜ ๋ฐฉ์ง€”์— ์œ ๋ฆฌ

์ •๋ฆฌํ•˜๋ฉด, sudo๋Š” root๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ
root ๊ถŒํ•œ์„ ‘ํ†ต์ œ๋œ ๋ฐฉ์‹’์œผ๋กœ ์“ฐ๊ฒŒ ํ•ด์ฃผ๋Š” ์žฅ์น˜์ž…๋‹ˆ๋‹ค.

sudo ๋ช…๋ น์–ด๋ฅผ ๋ณด์•ˆ ๊ฒŒ์ดํŠธ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ์Šต. ์‚ฌ์šฉ์ž๋Š” sudo๋กœ root ๊ณต๊ฐ„์— ์ผ์‹œ ์ ‘๊ทผํ•˜๋ฉฐ, ๋ชจ๋“  ํ–‰์œ„๋Š” ๋กœ๊ทธ ์„œ๋ฒ„์™€ CCTV์— ๊ธฐ๋ก๋จ. ๊ถŒํ•œ ์ƒ์Šน๊ณผ ๊ฐ์‚ฌ ์ถ”์ ์˜ ๊ฐœ๋…์„ ์‹œ๊ฐํ™”
AI ์ƒ์„ฑํ˜• ์ด๋ฏธ์ง€ - sudo๋Š” root ๊ถŒํ•œ์„ ์•ˆ์ „ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ณด์•ˆ ๊ฒŒ์ดํŠธ์ž…๋‹ˆ๋‹ค: ๊ถŒํ•œ ์ƒ์Šน + ๊ธฐ๋ก ๊ธฐ๋Šฅ


2. su vs sudo: ๋ญ๊ฐ€ ๋‹ค๋ฅด๊ธธ๋ž˜ ๋‹ค๋“ค sudo๋ฅผ ์“ฐ๋‚˜?

๋‘˜ ๋‹ค “๊ถŒํ•œ์„ ์˜ฌ๋ฆฌ๋Š”” ๋А๋‚Œ์ด์ง€๋งŒ, ์„ฑ๊ฒฉ์ด ๋‹ฌ๋ผ์š”.


๊ตฌ๋ถ„ su sudo
ํ•ต์‹ฌ ์‚ฌ์šฉ์ž ์ž์ฒด๋ฅผ ๋ฐ”๊ฟˆ ํ˜„์žฌ ์‚ฌ์šฉ์ž๋Š” ์œ ์ง€, ๋ช…๋ น๋งŒ ๊ถŒํ•œ ์ƒ์Šน
์ธ์ฆ ๋ณดํ†ต ๋Œ€์ƒ ๊ณ„์ •(root) ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณดํ†ต ๋‚ด ๊ณ„์ • ๋น„๋ฐ€๋ฒˆํ˜ธ
์šด์˜ root๋กœ ์˜ค๋ž˜ ๋จธ๋ฌผ๊ธฐ ์‰ฌ์›€ ์ตœ์†Œ๊ถŒํ•œ(ํ•„์š”ํ•  ๋•Œ๋งŒ) ์šด์˜์— ์œ ๋ฆฌ
๊ฐ์‚ฌ/ํ†ต์ œ ์ œํ•œ/๊ธฐ๋ก์ด ์ƒ๋Œ€์ ์œผ๋กœ ๊ฑฐ์น  ์ˆ˜ ์žˆ์Œ ๋ช…๋ น ๋‹จ์œ„ ํ†ต์ œ/๋กœ๊ทธ์— ๊ฐ•์ 

์‹ค๋ฌด์—์„œ sudo๊ฐ€ ์„ ํ˜ธ๋˜๋Š” ์ด์œ ๋Š” ๋”ฑ ํ•˜๋‚˜๋กœ ์š”์•ฝ๋ฉ๋‹ˆ๋‹ค.
“๊ณ„์† root๊ฐ€ ๋˜๋Š” ๊ฒƒ”๋ณด๋‹ค “ํ•„์š”ํ•œ ์ผ๋งŒ root๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒŒ” ์•ˆ์ „ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

su์™€ sudo์˜ ์ฐจ์ด๋ฅผ 4๋‹จ๊ณ„๋กœ ๋น„๊ตํ•œ ์นด๋“œ๋‰ด์Šค. su๋Š” ์‚ฌ์šฉ์ž ์ „์ฒด๊ฐ€ root๋กœ ๋ฐ”๋€Œ์–ด ์‚ฌ๊ณ  ์œ„ํ—˜์ด ํฌ๋ฉฐ ๋กœ๊ทธ๊ฐ€ ๋‚จ์ง€ ์•Š์ง€๋งŒ, sudo๋Š” ๋ช…๋ น๋งŒ ๊ถŒํ•œ ์ƒ์Šนํ•˜๊ณ  ์‹คํ–‰ ๋‚ด์—ญ์ด ๊ธฐ๋ก๋ผ ์šด์˜์— ์•ˆ์ „ํ•œ ๊ตฌ์กฐ
๊ถŒํ•œ ์ƒ์Šน ๋ฐฉ์‹๊ณผ ๋ณด์•ˆ ๊ด€์  ๋น„๊ต


3. ๋ฆฌ๋ˆ…์Šค sudo ๋ช…๋ น์–ด ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•

1) ๊ธฐ๋ณธ ํ˜•ํƒœ

sudo <๋ช…๋ น์–ด>
 

์˜ˆ์‹œ:

sudo apt update
sudo systemctl restart nginx
sudo vim /etc/ssh/sshd_config
 

๋ฐฐํฌํŒ์— ๋”ฐ๋ผ ํŒจํ‚ค์ง€ ๋ช…๋ น์€ apt, dnf, yum ๋“ฑ์œผ๋กœ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์–ด์š”.

sudo ๋ช…๋ น์–ด ์‹คํ–‰์„ ์‹ค์ œ ํ„ฐ๋ฏธ๋„ ์ฐฝ์ฒ˜๋Ÿผ ํ‘œํ˜„ํ•œ ์ด๋ฏธ์ง€. apt update, systemctl restart nginx, vim ์„ค์ • ํŒŒ์ผ ์ˆ˜์ • ๋ช…๋ น์–ด๋ฅผ ํฌํ•จํ•˜๋ฉฐ ์ƒ๋‹จ์— ํ„ฐ๋ฏธ๋„ ๋ฒ„ํŠผ๊ณผ ์‚ฌ์šฉ์ž ํ”„๋กฌํ”„ํŠธ ํ˜•์‹
sudo ๋ช…๋ น์–ด ์˜ˆ์‹œ

2) ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” “root ๋น„๋ฐ€๋ฒˆํ˜ธ”๊ฐ€ ์•„๋‹ˆ๋‹ค

์ฒ˜์Œ ์‹คํ–‰ํ•˜๋ฉด ๋ณดํ†ต ์ด๋ ‡๊ฒŒ ๋ฌผ์–ด๋ด…๋‹ˆ๋‹ค.

[sudo] password for username:
 

์—ฌ๊ธฐ์„œ ์ž…๋ ฅํ•˜๋Š” ๊ฑด ๋Œ€๋ถ€๋ถ„ ํ˜„์žฌ ๋กœ๊ทธ์ธํ•œ ๋‚ด ๊ณ„์ • ๋น„๋ฐ€๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.
(“์ด ์‚ฌ์šฉ์ž๊ฐ€ sudo ๊ถŒํ•œ์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž ๋งž์•„?”๋ฅผ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์ด์—์š”.)

๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„์—์„œ sudo ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•œ ๋’ค ๋‚˜ํƒ€๋‚˜๋Š” [sudo] password for user1: ๋ฉ”์‹œ์ง€ ์˜ˆ์‹œ. root ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์•„๋‹ˆ๋ผ ํ˜„์žฌ ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž ๊ณ„์ •์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋Š” ํ™”๋ฉด์„ ์‹ค์ œ ํ„ฐ๋ฏธ๋„ ์Šคํƒ€์ผ
sudo ์ธ์ฆ ๋ฉ”์‹œ์ง€ ์˜ˆ์‹œ

3) sudo ์บ์‹œ(ํƒ€์ž„์•„์›ƒ)

ํ•œ ๋ฒˆ ์ธ์ฆํ•˜๋ฉด ์ž ๊น ๋™์•ˆ์€ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋‹ค์‹œ ์•ˆ ๋ฌป๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.
๋‹ค๋งŒ ์ด ์‹œ๊ฐ„์€ ์‹œ์Šคํ…œ ์„ค์ •(sudoers์˜ timestamp_timeout)์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์–ด์š”.

sudo ๋ช…๋ น์–ด ์‹คํ–‰ ํ›„ ์ผ์ • ์‹œ๊ฐ„ ๋™์•ˆ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋‹ค์‹œ ๋ฌป์ง€ ์•Š๋Š” ์บ์‹œ ๋™์ž‘ ์˜ˆ์‹œ. sudo ์ธ์ฆ ํ›„ ์—ฌ๋Ÿฌ ๋ช…๋ น์„ ์ถ”๊ฐ€๋กœ ์‹คํ–‰ํ•  ๋•Œ๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ ์—†์ด ์ž‘๋™ํ•˜์ง€๋งŒ, ์ผ์ • ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ๋‹ค์‹œ ์ž…๋ ฅ์„ ์š”๊ตฌํ•จ. timestamp_timeout ์„ค์ •์„ ์„ค๋ช…ํ•˜๋Š” ์‹ค์ œ ํ„ฐ๋ฏธ๋„
sudo ์บ์‹œ ๋™์ž‘ ์˜ˆ์‹œ

4) ์ธ์ฆ์„ ์ฆ‰์‹œ “๋Š๊ณ ” ์‹ถ์„ ๋•Œ

sudo -k
 

์ž ๊น ์ž๋ฆฌ ๋น„์šธ ๋•Œ๋‚˜ ๊ณต์šฉ ํ„ฐ๋ฏธ๋„ ํ™˜๊ฒฝ์ด๋ฉด ๊ฝค ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

sudo -k ๋ช…๋ น์–ด๋กœ ์ธ์ฆ ์บ์‹œ๋ฅผ ์ฆ‰์‹œ ์ข…๋ฃŒํ•œ ๋’ค, sudo ๋ช…๋ น ์‹คํ–‰ ์‹œ ๋‹ค์‹œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์š”๊ตฌํ•˜๋Š” ํ„ฐ๋ฏธ๋„ ์˜ˆ์‹œ. ๊ณต์šฉ ํ™˜๊ฒฝ์—์„œ sudo ์„ธ์…˜์„ ์ˆ˜๋™์œผ๋กœ ์ข…๋ฃŒํ•ด ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•  ์ˆ˜ ์žˆ์Œ.
sudo -k: ์ธ์ฆ ์บ์‹œ ์˜ˆ์‹œ

5) ๋‚ด๊ฐ€ ์–ด๋–ค sudo ๊ถŒํ•œ์ด ์žˆ๋Š”์ง€ ํ™•์ธ

sudo -l
 

“์ด ๊ณ„์ •์ด ๋ญ˜ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€”๋ฅผ ๋จผ์ € ํ™•์ธํ•˜๋Š” ์Šต๊ด€์ด ์‚ฌ๊ณ ๋ฅผ ์ค„์—ฌ์ค๋‹ˆ๋‹ค.

sudo -l ๋ช…๋ น์–ด๋กœ ํ˜„์žฌ ์‚ฌ์šฉ์ž ๊ณ„์ •์ด ์–ด๋–ค sudo ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ํ„ฐ๋ฏธ๋„ ์˜ˆ์‹œ. ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๋ช…๋ น ๋ชฉ๋ก๊ณผ ์„ค์ •๊ฐ’์„ ๋ณด์—ฌ์ฃผ๋ฉฐ ์‹ค๋ฌด์—์„œ ์‹ค์ˆ˜ ๋ฐฉ์ง€์— ์œ ์šฉํ•จ.
sudo -l: ํ˜„์žฌ ์‚ฌ์šฉ์ž์˜ sudo ๊ถŒํ•œ ๋ชฉ๋ก ํ™•์ธ ์˜ˆ์‹œ


4. sudo๊ฐ€ ๋จนํžˆ์ง€ ์•Š๋Š” 3๊ฐ€์ง€ ์ผ€์ด์Šค

์ด ๋ถ€๋ถ„์€ ์ง„์งœ ๋งŽ์ด ํ‹€๋ ค์š”.

1) ๋ฆฌ๋‹ค์ด๋ ‰์…˜(>, >>)์€ sudo๊ฐ€ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๋Š”๋‹ค

์•„๋ž˜๋Š” ์‹คํŒจํ•˜๋Š” ๋Œ€ํ‘œ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

sudo echo "PermitRootLogin no" > /etc/ssh/sshd_config
 

sudo๋Š” echo๋งŒ ์˜ฌ๋ ค์ค„ ๋ฟ, >๋Š” ๋‚ด ์‰˜์ด ์ฒ˜๋ฆฌํ•ด์„œ ๊ถŒํ•œ ์—๋Ÿฌ๊ฐ€ ๋‚ฉ๋‹ˆ๋‹ค.

โœ… ํ•ด๊ฒฐ:

echo "PermitRootLogin no" | sudo tee -a /etc/ssh/sshd_config
 

tee ๋ช…๋ น์–ด๋ฅผ sudo์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ด ํ•ด๊ฒฐ

2) ํŒŒ์ดํ”„(|)์—์„œ “์•ž๋งŒ sudo”์ธ ๊ฒฝ์šฐ

sudo cat /var/log/auth.log | grep sudo
 

์ด๊ฑด ๋Œ€์ฒด๋กœ ๋™์ž‘ํ•˜์ง€๋งŒ, ๋ฐ˜๋Œ€๋กœ “๋’ค๊ฐ€ root ๊ถŒํ•œ์ด ํ•„์š”ํ•œ ์ž‘์—…”์ด๋ฉด ๋ง‰ํž ์ˆ˜ ์žˆ์–ด์š”.
ํ•„์š”ํ•˜๋ฉด ์ „์ฒด๋ฅผ root ์…ธ๋กœ ์ž ๊น ๋ฌถ๊ฑฐ๋‚˜, tee ๊ฐ™์€ ๋„๊ตฌ๋กœ ์„ค๊ณ„ํ•˜๋Š” ํŽธ์ด ์•ˆ์ „ํ•ฉ๋‹ˆ๋‹ค.

๋‘ ๋ช…์˜ ์บ๋ฆญํ„ฐ๊ฐ€ sudo ํŒŒ์ดํ”„ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด์„œ ๋ฐœ์ƒํ•˜๋Š” ๊ถŒํ•œ ๋ฌธ์ œ๋ฅผ ์„ค๋ช…ํ•˜๋Š” ์ผ๋Ÿฌ์ŠคํŠธ. ์™ผ์ชฝ ์บ๋ฆญํ„ฐ๋Š” sudo cat ๋ช…๋ น๋งŒ ์ž…๋ ฅํ•˜๊ณ , ์˜ค๋ฅธ์ชฝ ์บ๋ฆญํ„ฐ๋Š” grep์—์„œ Permission denied ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•จ์„ ์ง€์ ํ•œ๋‹ค.
sudo๋Š” ๋ช…๋ น์–ด ์•ž๋งŒ ๊ถŒํ•œ์„ ์˜ฌ๋ ค์ค€๋‹ค.

3) ํ™˜๊ฒฝ๋ณ€์ˆ˜(-E)๋Š” ํŽธํ•˜์ง€๋งŒ ์œ„ํ—˜ํ•  ์ˆ˜ ์žˆ์Œ

sudo -E <๋ช…๋ น>
 

ํ™˜๊ฒฝ๋ณ€์ˆ˜๋ฅผ ๊ทธ๋Œ€๋กœ ๋„˜๊ธฐ๋Š” ๊ฑด ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋ณด์•ˆ ๋ฆฌ์Šคํฌ๊ฐ€ ๋  ์ˆ˜ ์žˆ์–ด์š”. “์ •๋ง ํ•„์š”ํ•œ๊ฐ€?”๋ฅผ ๋จผ์ € ์ฒดํฌํ•˜๋Š” ๊ฒŒ ์ข‹์Šต๋‹ˆ๋‹ค.

sudo -E ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์œ ์ง€ํ•œ ์ฑ„ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋Š” ์ƒํ™ฉ์„ ๋ฌ˜์‚ฌํ•œ ์ธํฌ๊ทธ๋ž˜ํ”ฝ. ์บ๋ฆญํ„ฐ๊ฐ€ ๋งํ’์„ ์„ ํ†ตํ•ด ์กฐ์‹ฌ์Šค๋Ÿฝ๊ฒŒ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ๋„˜๊ธฐ๋Š” ์žฅ๋ฉด์ด ์žˆ์œผ๋ฉฐ, ๋ฐฐ๊ฒฝ์€ ์–ด๋‘์šด ์„œ๋ฒ„ ํ™˜๊ฒฝ์ฒ˜๋Ÿผ ํ‘œํ˜„๋˜์–ด ์žˆ๋‹ค.
sudo -E๋Š” ํ™˜๊ฒฝ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ•˜์ง€๋งŒ, ๋ณด์•ˆ์ƒ ์ฃผ์˜๊ฐ€ ํ•„์š”ํ•œ ์˜ต์…˜์ž…๋‹ˆ๋‹ค.


5. ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰ํ•˜๊ธฐ (-u)

sudo๋Š” root๋งŒ์„ ์œ„ํ•œ ๋ช…๋ น์ด ์•„๋‹ˆ๋ผ, “๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰”์ด ๋ณธ๋ž˜ ์ปจ์…‰์ž…๋‹ˆ๋‹ค.

sudo -u www-data ls -al /var/www
sudo -u postgres psql
 

์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” “์„œ๋น„์Šค ๊ณ„์ •์œผ๋กœ ์‹คํ–‰ ํ…Œ์ŠคํŠธ”ํ•  ๋•Œ ๊ฝค ์ž์ฃผ ์”๋‹ˆ๋‹ค.

ํ„ฐ๋ฏธ๋„์—์„œ sudo -u ๋ช…๋ น์–ด๋กœ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์œผ๋กœ ์ „ํ™˜ํ•˜๋Š” ๋ชจ์Šต์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ถ„ํ•  ์ผ๋Ÿฌ์ŠคํŠธ.
์™ผ์ชฝ์€ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž, ์˜ค๋ฅธ์ชฝ์€ postgres ๊ฐ™์€ ๋‹ค๋ฅธ ๊ณ„์ •์œผ๋กœ ๋ช…๋ น ์‹คํ–‰ํ•˜๋Š” ์žฅ๋ฉด.
sudo -u ๋กœ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ๊ถŒํ•œ ์‹คํ–‰


6. root ์…ธ์ด ํ•„์š”ํ•  ๋•Œ: sudo -i / sudo -s

์—ฌ๋Ÿฌ ๋ช…๋ น์„ ์—ฐ์†์œผ๋กœ ํ•ด์•ผ ํ•œ๋‹ค๋ฉด ํ•œ ์ค„์”ฉ sudo๋ฅผ ๋ถ™์ด๋Š” ๊ฒŒ ๋ฒˆ๊ฑฐ๋กœ์šธ ์ˆ˜ ์žˆ์–ด์š”.

  • sudo -i : ๋กœ๊ทธ์ธ ์…ธ์ฒ˜๋Ÿผ root ํ™˜๊ฒฝ์œผ๋กœ ์ง„์ž…
  • sudo -s : ํ˜„์žฌ ํ™˜๊ฒฝ์„ ์œ ์ง€ํ•œ ์ฑ„ root ์…ธ ์‹คํ–‰
sudo -i
# ํ•„์š”ํ•œ ์ž‘์—…๋งŒ ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌ
exit
 

ํ•ต์‹ฌ์€ ์ด๊ฑฐ์˜ˆ์š”.
“๊ฐ€๋Šฅํ•˜๋ฉด ํ•œ ์ค„ sudo, ํ•„์š”ํ•˜๋ฉด ์งง๊ฒŒ root ์…ธ”
(์˜ค๋ž˜ ๋จธ๋ฌด๋ฅผ์ˆ˜๋ก ์‹ค์ˆ˜ ํ™•๋ฅ ์ด ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค.)

์ผ๋ฐ˜ ์‚ฌ์šฉ์ž ์‰˜์—์„œ sudo ๋ช…๋ น์„ ๋ฐ˜๋ณต ์‹คํ–‰ํ•˜๋Š” ๋ชจ์Šต๊ณผ, sudo -i ๋ช…๋ น์œผ๋กœ root ์‰˜์— ์ง„์ž…ํ•ด ์—ฌ๋Ÿฌ ๋ช…๋ น์„ ์—ฐ์† ์‹คํ–‰ํ•˜๋Š” ์ƒํ™ฉ์„ ๋‚˜๋ž€ํžˆ ๋น„๊ตํ•œ ํ„ฐ๋ฏธ๋„ ํ™”๋ฉด
sudo๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ์‹คํ–‰ํ•  ๋•Œ์™€ sudo -i๋กœ root ์…ธ์— ์ง„์ž…ํ–ˆ์„ ๋•Œ์˜ ์ฐจ์ด


7. sudo ๊ถŒํ•œ์€ ์–ด๋””์„œ ์ •ํ•ด์งˆ๊นŒ? (sudoers)

sudo ๊ทœ์น™์€ ๋ณดํ†ต ์—ฌ๊ธฐ์—์„œ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

  • /etc/sudoers
  • /etc/sudoers.d/* ← ์‹ค๋ฌด์—์„œ ํŒŒ์ผ๋กœ ๋‚˜๋ˆ  ๊ด€๋ฆฌํ•  ๋•Œ ์ž์ฃผ ์‚ฌ์šฉ

sudoers๋Š” ๋ฌด์กฐ๊ฑด visudo๋กœ

์ง์ ‘ ํŽธ์ง‘ํ•˜๋‹ค๊ฐ€ ๋ฌธ๋ฒ• ํ•œ ๊ธ€์ž ํ‹€๋ฆฌ๋ฉด, ์ง„์งœ๋กœ “sudo๋กœ ๊ณ ์น  ์ˆ˜๋„ ์—†๋Š” ์ƒํ™ฉ”์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.

sudo visudo
 

๋ถ„๋ฆฌ ๊ด€๋ฆฌ ์˜ˆ์‹œ(๊ถŒ์žฅ):

sudo visudo -f /etc/sudoers.d/deploy
 

๊ทธ๋ฃน ๊ธฐ๋ฐ˜ ๊ถŒํ•œ (sudo / wheel)

์˜ˆ:

%sudo  ALL=(ALL:ALL) ALL
%wheel ALL=(ALL)     ALL
 

“๊ด€๋ฆฌ์ž”๋Š” ๊ฒฐ๊ตญ ๊ทธ๋ฃน ๋ฉค๋ฒ„์‹ญ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒŒ ๊น”๋”ํ•ฉ๋‹ˆ๋‹ค.

ํŠน์ • ๋ช…๋ น๋งŒ ํ—ˆ์šฉํ•˜๋Š” ๊ฒŒ ‘์ง„์งœ’ sudo ์šด์˜

์˜ˆ: deploy ๊ณ„์ •์€ ๋ฐฐํฌ ๊ด€๋ จ ๋ช…๋ น๋งŒ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์ œํ•œ

 
deploy ALL=(root) NOPASSWD: /usr/bin/systemctl restart myapp.service, /usr/local/bin/deploy.sh

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ํฌ์ธํŠธ:

  • ๊ฐ€๋Šฅํ•œ ํ•œ ๋ช…๋ น์„ ์ข๊ฒŒ
  • ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ—ˆ์šฉํ–ˆ๋‹ค๋ฉด, ๊ทธ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰ํ•˜๋Š” ๋‚ด์šฉ๋„ ๊ฒ€์ฆ/๊ถŒํ•œ ํ†ต์ œํ•ด์•ผ ํ•จ

ํ„ฐ๋ฏธ๋„ sudo ๊ถŒํ•œ ์„ค์ • ํ๋ฆ„์„ ์‹œ๊ฐํ™”ํ•œ ์ธํฌ๊ทธ๋ž˜ํ”ฝ. ์ค‘์•™์—๋Š” sudoers ํŒŒ์ผ์ด ์žˆ๊ณ , ์™ผ์ชฝ์€ /etc/sudoers ๊ธฐ๋ณธ ์„ค์ •์„, ์˜ค๋ฅธ์ชฝ์€ /etc/sudoers.d/ ์‚ฌ์šฉ์ž ์ •์˜ ์„ค์ • ํŒŒ์ผ์„ ๋ณด์—ฌ์ค€๋‹ค. ํ•˜๋‹จ์—๋Š” ์„œ๋น„์Šค ๊ณ„์ •์˜ ์ œํ•œ๋œ ๋ช…๋ น ์‹คํ–‰ ์˜ˆ์‹œ๊ฐ€ ๋ณด์ธ๋‹ค.
AI ์ƒ์„ฑํ˜• ์ด๋ฏธ์ง€ : /etc/sudoers ์™€ sudoers.d ์„ค์ • ํ๋ฆ„


8. sudo ์‹ค์ˆ˜ ๋ฐฉ์ง€ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

  • rm -rf, chown -R, chmod -R์— sudo ๋ถ™์ด๊ธฐ ์ „: ๊ฒฝ๋กœ ํ•œ ๋ฒˆ ๋” ๋ณด๊ธฐ
  • “๋˜๊ฒŒ ํ•˜๋ ค๊ณ ” NOPASSWD๋ฅผ ์ „์ฒด๋กœ ์—ด์ง€ ๋ง๊ธฐ
    • ์ •๋ง ํ•„์š”ํ•˜๋ฉด ํŠน์ • ๋ช…๋ น๋งŒ NOPASSWD
  • sudo ๊ถŒํ•œ ๋ถ€์—ฌ/ํšŒ์ˆ˜๋Š” ์ธ์‚ฌ ์ด๋ฒคํŠธ(์ž…์‚ฌ/์ด๋™/ํ‡ด์‚ฌ)์™€ ๊ฐ™์ด ๊ด€๋ฆฌ
  • ์„œ๋ฒ„๋ผ๋ฉด root SSH ๋กœ๊ทธ์ธ ์ฐจ๋‹จ๊ณผ ํ•จ๊ป˜ ๋ฌถ๊ธฐ
PermitRootLogin no

sudo ์‹ค์ˆ˜ ๋ฐฉ์ง€๋ฅผ ์œ„ํ•œ 4์ปท ๋งŒํ™”: ์œ„ํ—˜ํ•œ ๋ช…๋ น ์‹คํ–‰, ๊ถŒํ•œ ์˜ค๋ฅ˜, ์‹ค์ˆ˜ ์ž๊ฐ, ์ฒดํฌ๋ฆฌ์ŠคํŠธ ๊ฐœ์„ 
4์ปท์œผ๋กœ ๋ณด๋Š” sudo ์ฒดํฌ๋ฆฌ์ŠคํŠธ


9. sudo ๋กœ๊ทธ: ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒผ์„ ๋•Œ ์ œ์ผ ๋จผ์ € ๋ณด๋Š” ๊ณณ

sudo ์‹คํ–‰ ํ”์ ์€ ๋ณดํ†ต ์ธ์ฆ ๋กœ๊ทธ์— ๋‚จ์Šต๋‹ˆ๋‹ค.

  • Debian/Ubuntu: /var/log/auth.log
  • RHEL/CentOS ๊ณ„์—ด: /var/log/secure

ํ•„ํ„ฐ๋ง:

grep sudo /var/log/auth.log
# ๋˜๋Š”
grep sudo /var/log/secure
 

์šด์˜์ž ์ž…์žฅ์—์„œ๋Š” sudo๊ฐ€ ๊ถŒํ•œ ๋„๊ตฌ์ด๋ฉด์„œ ๋™์‹œ์— ๊ธฐ๋ก ์žฅ์น˜๋ผ๋Š” ๊ฒŒ ํ•ต์‹ฌ์ด์—์š”.
์žฅ์• /๋ณด์•ˆ ์ด์Šˆ๊ฐ€ ๋‚ฌ์„ ๋•Œ “๋ˆ„๊ฐ€ ๋ญ˜ ํ–ˆ๋Š”์ง€”๊ฐ€ ๋‚จ์•„ ์žˆ์œผ๋ฉด ๋Œ€์‘ ์†๋„๊ฐ€ ํ™• ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

sudo ๋ช…๋ น ๊ธฐ๋ก์„ ๊ฐ์‹œํ•˜๋Š” ๋ณด์•ˆ ์‹œ์Šคํ…œ ์ฝ˜์†”. CCTV ํ™”๋ฉด ์œ„์— Linux ์ธ์ฆ ๋กœ๊ทธ ๋ถ„์„๊ณผ sudo ๋ช…๋ น ์ถ”์  ์ •๋ณด๊ฐ€ ํ‘œ์‹œ๋œ ๋ชจ์Šต.
AI ์ƒ์„ฑํ˜• ์ด๋ฏธ์ง€ : sudo ๋กœ๊ทธ ์ถ”์ 


10. FAQ

Q. sudo ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” root ๋น„๋ฐ€๋ฒˆํ˜ธ์ธ๊ฐ€์š”?
A. ๋ณดํ†ต ๋‚ด ๊ณ„์ • ๋น„๋ฐ€๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

Q. sudo ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ์ด ๊ท€์ฐฎ์€๋ฐ ์—†์•จ ์ˆ˜ ์žˆ๋‚˜์š”?
A. ๊ฐ€๋Šฅ์€ ํ•ฉ๋‹ˆ๋‹ค(NOPASSWD). ๋Œ€์‹  ํŠน์ • ๋ช…๋ น๋งŒ ์ตœ์†Œ๋กœ ์—ฌ๋Š” ๊ฑธ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

Q. user is not in the sudoers file๊ฐ€ ๋– ์š”
A. sudo ๊ถŒํ•œ์ด ์—†๋Š” ๊ณ„์ •์ž…๋‹ˆ๋‹ค. root/๊ด€๋ฆฌ์ž ๊ณ„์ •์œผ๋กœ sudoers(๊ฐ€๊ธ‰์  /etc/sudoers.d/)์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


11. ๋ฆฌ๋ˆ…์Šค sudo ๋ช…๋ น์–ด๋ฅผ ์ดํ•ดํ•˜๋ฉด ๋ณด์ด๋Š” ๊ฒƒ๋“ค

๋ฆฌ๋ˆ…์Šค sudo ๋ช…๋ น์–ด์˜ ์ฑ…์ž„๊ฐ์„ ๊ฐ•์กฐํ•˜๋Š” ์ผ๋Ÿฌ์ŠคํŠธ. ์‹œ์Šคํ…œ ์ „์ฒด์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๊ธฐ ์ „ ์‹ ์ค‘ํ•˜๊ฒŒ ๊ณ ๋ฏผํ•˜๋Š” ์‚ฌ์šฉ์ž ๋ชจ์Šต
AI ์ƒ์„ฑํ˜• ์ด๋ฏธ์ง€

์ง€๊ธˆ๊นŒ์ง€ ๋‚ด์šฉ์„ ํ•œ ๋ฒˆ์— ์ •๋ฆฌํ•ด ๋ณด๋ฉด, sudo๋Š” ๋‹จ์ˆœํžˆ:

“๋ช…๋ น์–ด ์•ž์— ๋ถ™์—ฌ์„œ ๊ถŒํ•œ ์ƒ์Šนํ•˜๋Š” ๋„๊ตฌ”

๊ฐ€ ์•„๋‹ˆ๋ผ, ๋” ๋„“๊ฒŒ ๋ณด๋ฉด

root ๊ณ„์ •์„ ์ง์ ‘ ์“ฐ์ง€ ์•Š๊ณ 

  • ํŠน์ • ์‚ฌ์šฉ์ž/๊ทธ๋ฃน์—๊ฒŒ
  • ํŠน์ • ๋ช…๋ น๋งŒ
  • ํ•„์š”ํ•œ ์ˆœ๊ฐ„์—๋งŒ
  • ๋กœ๊ทธ๋ฅผ ๋‚จ๊ธฐ๋ฉด์„œ ์‹คํ–‰ํ•˜๊ฒŒ ํ•ด์ฃผ๋Š”

์‹œ์Šคํ…œ ๊ถŒํ•œ ๊ด€๋ฆฌ์˜ ํ•ต์‹ฌ ๋„๊ตฌ

์ž…๋‹ˆ๋‹ค.

  • ๋ฐ์Šคํฌํ†ฑ ๋ฆฌ๋ˆ…์Šค์—์„œ sudo apt-get install ... ํ•œ ์ค„๋กœ ์‹œ์ž‘ํ•ด์„œ
  • ์„œ๋ฒ„ ์šด์˜, ์„œ๋น„์Šค ๋ฐฐํฌ, ๋ฐฑ์—… ์Šคํฌ๋ฆฝํŠธ, cron ์ž‘์—… ๋“ฑ์œผ๋กœ ํ™•์žฅ๋ ์ˆ˜๋ก
  • ๋ฆฌ๋ˆ…์Šค sudo ๋ช…๋ น์–ด์˜ ์—ญํ• ์€ ์ ์  ๋” ์ค‘์š”ํ•ด์ง‘๋‹ˆ๋‹ค.

“sudo๋ฅผ ์“ด๋‹ค”๋Š” ๊ฑด ๊ฒฐ๊ตญ,

“๋‚ด๊ฐ€ ์ง€๊ธˆ ํ•˜๋Š” ์ด ๋ช…๋ น์€ ์‹œ์Šคํ…œ ์ „์ฒด์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋‹ค”