Apache AH00072 ์—๋Ÿฌ ์™„๋ฒฝํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

Apache AH00072 ์—๋Ÿฌ ์™„๋ฒฝํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

D
dongAuthor
4 min read

์„œ๋ฒ„๋ฅผ ๊ด€๋ฆฌํ•˜๋‹ค ๋ณด๋ฉด ์–˜๊ธฐ์น˜ ์•Š์€ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€์™€ ๋งˆ์ฃผ์น  ๋•Œ๊ฐ€ ๋งŽ์ฃ . ๊ทธ์ค‘์—์„œ๋„ Apache ์›น ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋‚˜ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์ž๋ผ๋ฉด AH00072: make_sock: could not bind to address๋ผ๋Š” ์—๋Ÿฌ๋ฅผ ํ•œ ๋ฒˆ์ฏค์€ ๋ณด์…จ์„ ๊ฒ๋‹ˆ๋‹ค. ์ด ์—๋Ÿฌ๋Š” Apache๊ฐ€ ์‹œ์ž‘๋˜์ง€ ๋ชปํ•˜๊ฒŒ ๋ง‰๋Š” ์ฃผ๋ฒ” ์ค‘ ํ•˜๋‚˜๋กœ, ์›น์‚ฌ์ดํŠธ๊ฐ€ ๋‹ค์šด๋˜๋Š” ์ง์ ‘์ ์ธ ์›์ธ์ด ๋ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๊ฑฑ์ • ๋งˆ์„ธ์š”! ์ด ์—๋Ÿฌ๋Š” ๋ณดํ†ต ๋ช‡ ๊ฐ€์ง€ ๊ฐ„๋‹จํ•œ ํ™•์ธ๊ณผ ์กฐ์น˜๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” AH00072 ์—๋Ÿฌ๊ฐ€ ์™œ ๋ฐœ์ƒํ•˜๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์ฐจ๊ทผ์ฐจ๊ทผ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์„ ๋๊นŒ์ง€ ์ฝ์œผ์‹œ๋ฉด, ๋‹ค์Œ์— ๊ฐ™์€ ์—๋Ÿฌ๋ฅผ ๋งŒ๋‚˜๋„ ๋‹นํ™ฉํ•˜์ง€ ์•Š๊ณ  ์นจ์ฐฉํ•˜๊ฒŒ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„ ๊ฑฐ์˜ˆ์š”.

AH00072 ์—๋Ÿฌ์˜ ํ”ํ•œ ์›์ธ๋“ค

AH00072: make_sock: could not bind to address ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋Š” Apache๊ฐ€ ์ง€์ •๋œ ํฌํŠธ(์ฃผ๋กœ 80 ๋˜๋Š” 443)์— ์—ฐ๊ฒฐ(bind)ํ•˜๋ ค ํ–ˆ์ง€๋งŒ ์‹คํŒจํ–ˆ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ๋งˆ์น˜ ์ฃผ์ฐจ์žฅ์— ์ฐจ๋ฅผ ์„ธ์šฐ๋ ค๋Š”๋ฐ ์ด๋ฏธ ๋‹ค๋ฅธ ์ฐจ๊ฐ€ ์ž๋ฆฌ๋ฅผ ์ฐจ์ง€ํ•˜๊ณ  ์žˆ๋Š” ์ƒํ™ฉ๊ณผ ๋น„์Šทํ•˜์ฃ .

์ฃผ์š” ์›์ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  • ํฌํŠธ ์ถฉ๋Œ: ๊ฐ€์žฅ ํ”ํ•œ ์›์ธ์ž…๋‹ˆ๋‹ค. Apache๊ฐ€ ์‚ฌ์šฉํ•˜๋ ค๋Š” ํฌํŠธ๋ฅผ ์ด๋ฏธ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์„ ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Nginx๋‚˜ ๋‹ค๋ฅธ ์›น ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ฐ™์€ ํฌํŠธ์—์„œ ์‹คํ–‰ ์ค‘์ด๊ฑฐ๋‚˜, ์ด์ „ Apache ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋น„์ •์ƒ์ ์œผ๋กœ ์ข…๋ฃŒ๋˜์–ด ํฌํŠธ๋ฅผ ๊ณ„์† ์ ์œ ํ•˜๊ณ  ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Apache ์„ค์ • ์˜ค๋ฅ˜: ports.conf๋‚˜ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ(Virtual Host) ์„ค์ • ํŒŒ์ผ์—์„œ ํฌํŠธ ์„ค์ •์ด ์ž˜๋ชป๋˜์—ˆ์„ ๊ฒฝ์šฐ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐฉํ™”๋ฒฝ ์„ค์ •: ์šด์˜์ฒด์ œ๋‚˜ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ(AWS, GCP ๋“ฑ)์˜ ๋ฐฉํ™”๋ฒฝ ๋˜๋Š” ๋ณด์•ˆ ๊ทธ๋ฃน์ด Apache๊ฐ€ ์‚ฌ์šฉํ•˜๋ ค๋Š” ํฌํŠธ๋กœ์˜ ์ ‘๊ทผ์„ ์ฐจ๋‹จํ•˜๊ณ  ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ถŒํ•œ ๋ฌธ์ œ (SELinux): ํŠนํžˆ CentOS๋‚˜ RHEL ๊ฐ™์€ ์‹œ์Šคํ…œ์—์„œ SELinux ๋ณด์•ˆ ์ •์ฑ…์ด Apache๊ฐ€ ํŠน์ • ํฌํŠธ์— ๋ฐ”์ธ๋”ฉํ•˜๋Š” ๊ฒƒ์„ ๋ง‰์„ ๋•Œ "Permission denied"์™€ ํ•จ๊ป˜ AH00072 ์—๋Ÿฌ๊ฐ€ ๋‚˜ํƒ€๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ ํ•ด๊ฒฐ์„ ์œ„ํ•œ ์ค€๋น„

๋ณธ๊ฒฉ์ ์ธ ํ•ด๊ฒฐ์— ์•ž์„œ, ๋‹ค์Œ ์‚ฌํ•ญ๋“ค์ด ์ค€๋น„๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ด์ฃผ์„ธ์š”.

  • ํ„ฐ๋ฏธ๋„ ์ ‘๊ทผ ๊ถŒํ•œ: ์„œ๋ฒ„์— SSH ๋“ฑ์œผ๋กœ ์ ‘์†ํ•˜์—ฌ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฃจํŠธ(root) ๋˜๋Š” sudo ๊ถŒํ•œ: ์‹œ์Šคํ…œ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ™•์ธ/์ข…๋ฃŒํ•˜๋ ค๋ฉด ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ž, ์ด์ œ ์ค€๋น„๊ฐ€ ๋˜์—ˆ๋‹ค๋ฉด ๋ณธ๊ฒฉ์ ์œผ๋กœ ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•ด ๋ด…์‹œ๋‹ค!

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•: ๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ

1. ํฌํŠธ๋ฅผ ์ ์œ  ์ค‘์ธ ํ”„๋กœ์„ธ์Šค ์ฐพ๊ณ  ์ข…๋ฃŒํ•˜๊ธฐ

๊ฐ€์žฅ ๋จผ์ € ํ•  ์ผ์€ ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. netstat ๋˜๋Š” ss ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํŠน์ • ํฌํŠธ๋ฅผ ์‚ฌ์šฉ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‰ฝ๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

netstat ์‚ฌ์šฉ (์ผ๋ฐ˜์ )
80๋ฒˆ ํฌํŠธ๋ฅผ ์˜ˆ๋กœ ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ํ„ฐ๋ฏธ๋„์— ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.

sudo netstat -nap | grep :80

ss ์‚ฌ์šฉ (์ตœ์‹  ๋ฆฌ๋ˆ…์Šค ์‹œ์Šคํ…œ)
ss๋Š” netstat๋ณด๋‹ค ๋” ๋น ๋ฅด๊ณ  ๋งŽ์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

sudo ss -lptn 'sport = :80'

๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด 80๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค์˜ ์ด๋ฆ„(์˜ˆ: httpd, nginx)๊ณผ PID(Process ID)๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ Apache๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด, ํ•ด๋‹น ์„œ๋น„์Šค๋ฅผ ์ค‘์ง€ํ•˜๊ฑฐ๋‚˜ ์„ค์ •์„ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋งŒ์•ฝ ๋น„์ •์ƒ์ ์œผ๋กœ ์ข…๋ฃŒ๋˜์ง€ ์•Š์€ Apache ํ”„๋กœ์„ธ์Šค๊ฐ€ ํฌํŠธ๋ฅผ ์ ์œ ํ•˜๊ณ  ์žˆ๋‹ค๋ฉด, kill ๋ช…๋ น์–ด๋กœ ํ•ด๋‹น ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ•์ œ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sudo kill -9 [PID ๋ฒˆํ˜ธ]

์˜ˆ๋ฅผ ๋“ค์–ด, PID๊ฐ€ 1234๋ผ๋ฉด sudo kill -9 1234๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•œ ํ›„, Apache๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด๋ณด์„ธ์š”.

sudo systemctl start apache2
# ๋˜๋Š”
sudo service apache2 start

2. Apache ์„ค์ • ํŒŒ์ผ ์ˆ˜์ •ํ•˜๊ธฐ

๋งŒ์•ฝ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ์„œ๋น„์Šค๊ฐ€ ํ•ด๋‹น ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด ์ข…๋ฃŒํ•  ์ˆ˜ ์—†๋‹ค๋ฉด, Apache๊ฐ€ ๋‹ค๋ฅธ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋จผ์ €, Apache์˜ ๋ฉ”์ธ ํฌํŠธ ์„ค์ • ํŒŒ์ผ์ธ ports.conf๋ฅผ ์ฐพ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ณดํ†ต /etc/apache2/ ๋””๋ ‰ํ„ฐ๋ฆฌ ์•ˆ์— ์žˆ์Šต๋‹ˆ๋‹ค.

# ํŒŒ์ผ ์œ„์น˜ ์ฐพ๊ธฐ (ํ•„์š” ์‹œ)
find / -name ports.conf

# ํŒŒ์ผ ์ˆ˜์ •ํ•˜๊ธฐ (vim ๋˜๋Š” ๋‹ค๋ฅธ ํŽธ์ง‘๊ธฐ ์‚ฌ์šฉ)
sudo vim /etc/apache2/ports.conf

ํŒŒ์ผ์„ ์—ด๋ฉด Listen 80๊ณผ ๊ฐ™์ด ํฌํŠธ ๋ฒˆํ˜ธ๊ฐ€ ์ง€์ •๋œ ์ค„์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฒˆํ˜ธ๋ฅผ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋‹ค๋ฅธ ํฌํŠธ(์˜ˆ: 8080)๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ์„ธ์š”.

# Before
Listen 80

# After
Listen 8080

๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ๋ฅผ ์‚ฌ์šฉ ์ค‘์ด๋ผ๋ฉด, ํ•ด๋‹น ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ์„ค์ • ํŒŒ์ผ (/etc/apache2/sites-available/your-site.conf ๋“ฑ)์—์„œ๋„ ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์ผ์น˜์‹œ์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

# Before
<VirtualHost *:80>
    ...
</VirtualHost>

# After
<VirtualHost *:8080>
    ...
</VirtualHost>

์„ค์ • ๋ณ€๊ฒฝ ํ›„์—๋Š” Apache๋ฅผ ์žฌ์‹œ์ž‘ํ•˜์—ฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

3. ๋ฐฉํ™”๋ฒฝ ์„ค์ • ํ™•์ธํ•˜๊ธฐ

์‚ฌ์‹ค, ์œ„ ์†”๋ฃจ์…˜์œผ๋กœ๋„ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐฉํ™”๋ฒฝ์€ ๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„์—์„œ ํ™•์ธํ•ด๋ณด์‹œ๋Š”๊ฒŒ ์ข‹์Šต๋‹ˆ๋‹ค. Apache๊ฐ€ ์‚ฌ์šฉํ•  ํฌํŠธ๋ฅผ ๋ณ€๊ฒฝํ–ˆ๋‹ค๋ฉด, ๋ฐฉํ™”๋ฒฝ์—์„œ๋„ ํ•ด๋‹น ํฌํŠธ๋ฅผ ์—ด์–ด์ฃผ์–ด์•ผ ์™ธ๋ถ€์—์„œ ์ ‘์†ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

UFW (Ubuntu)
8080 ํฌํŠธ๋ฅผ ์˜ˆ๋กœ ๋“ค๊ฒ ์Šต๋‹ˆ๋‹ค.

sudo ufw allow 8080/tcp
sudo ufw reload

firewalld (CentOS/RHEL)

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

AWS, GCP ๋“ฑ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉ ์ค‘์ด๋ผ๋ฉด, ํ•ด๋‹น ํ”Œ๋žซํผ์˜ โ€˜๋ณด์•ˆ ๊ทธ๋ฃนโ€™ ๋˜๋Š” โ€˜๋ฐฉํ™”๋ฒฝ ๊ทœ์น™โ€™ ์„ค์ •์—์„œ ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™์œผ๋กœ ๋ณ€๊ฒฝํ•œ ํฌํŠธ๋ฅผ ํ—ˆ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์žฌ๋ฐœ ๋ฐฉ์ง€๋ฅผ ์œ„ํ•œ ๋ชจ๋ฒ” ์‚ฌ๋ก€

๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ๋„ ์ค‘์š”ํ•˜์ง€๋งŒ, ์•ž์œผ๋กœ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ์˜ˆ๋ฐฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์ข‹์Šต๋‹ˆ๋‹ค.

  • ์„œ๋ฒ„ ๋‚ด ์„œ๋น„์Šค ํฌํŠธ ๋ชฉ๋กํ™”: ์„œ๋ฒ„์—์„œ ์‹คํ–‰ ์ค‘์ธ ์ฃผ์š” ์„œ๋น„์Šค์™€ ๊ฐ ์„œ๋น„์Šค๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ํฌํŠธ๋ฅผ ๋ฌธ์„œ๋กœ ์ •๋ฆฌํ•ด๋‘๋ฉด ํฌํŠธ ์ถฉ๋Œ์„ ๋ฏธ์—ฐ์— ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Apache ์ •์ƒ ์ข…๋ฃŒ ์Šต๊ด€ํ™”: ์„œ๋ฒ„๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ Apache ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ๋•Œ๋Š” systemctl stop apache2๋‚˜ service apache2 stop๊ณผ ๊ฐ™์€ ์ •์‹ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ด ์ •์ƒ์ ์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ข…๋ฃŒํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ์ •๊ธฐ์ ์ธ ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง: ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•ด ์„œ๋ฒ„์˜ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋Ÿ‰๊ณผ ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ํ™•์ธํ•˜๋ฉด ์˜ˆ๊ธฐ์น˜ ์•Š์€ ๋ฌธ์ œ๋ฅผ ์กฐ๊ธฐ์— ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
Apache AH00072 ์—๋Ÿฌ ์™„๋ฒฝํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• | devdong