Linux ์๋ฒ๋ฅผ ์ด์ํ ๋ ๊ฐ์ฅ ์ค์ํ ์์ ์ค ํ๋๋ ๋ฐฉํ๋ฒฝ ์ค์ ์ ๋๋ค.
Ubuntu์์๋ Uncomplicated Firewall(UFW) ๋ผ๋ ๋ฐฉํ๋ฒฝ ๊ด๋ฆฌ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ฉฐ, ๋ณต์กํ iptables ๊ท์น์ ์ฝ๊ฒ ๊ด๋ฆฌํ ์ ์๋๋ก ๋ง๋ค์ด์ก์ต๋๋ค.
์ด๋ฒ ๊ธ์์๋ Ubuntu์์ UFW ์ค์น๋ถํฐ ๊ธฐ๋ณธ ๋ฐฉํ๋ฒฝ ์ค์ ๊น์ง ๋จ๊ณ๋ณ๋ก ์ค๋ช ํ๊ฒ ์ต๋๋ค.
UFW๋ Ubuntu์์ ๊ธฐ๋ณธ ์ ๊ณต๋๋ ๋ฐฉํ๋ฒฝ ๊ด๋ฆฌ ๋๊ตฌ์ ๋๋ค.
๋ฆฌ๋ ์ค์ ๋ฐฉํ๋ฒฝ์ ์๋ iptables๋ฅผ ์ฌ์ฉํ์ง๋ง ์ค์ ์ด ๋ณต์กํ๊ธฐ ๋๋ฌธ์, UFW๋ ์ด๋ฅผ ๊ฐ๋จํ ๋ช ๋ น์ด๋ก ๊ด๋ฆฌํ ์ ์๋๋ก ๋ง๋ ์ธํฐํ์ด์ค์ ๋๋ค.
UFW์ ํน์ง
- iptables ๊ธฐ๋ฐ ๋ฐฉํ๋ฒฝ ๊ด๋ฆฌ
- ๊ฐ๋จํ ๋ช ๋ น์ด ์ฌ์ฉ
- Ubuntu ๊ธฐ๋ณธ ์ง์
Ubuntu์์๋ ๋๋ถ๋ถ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์น๋์ด ์์ผ๋ฉฐ, ๋ค์ ๋ช ๋ น์ด๋ก ํ์ธํฉ๋๋ค.
bash
ufw status
์ค์น๋์ด ์์ง ์๋ค๋ฉด ์๋ ๋ช ๋ น์ด๋ก ์ค์นํฉ๋๋ค.
bash
sudo apt update
sudo apt install ufw
๋ฐฉํ๋ฒฝ์ ๊ธฐ๋ณธ ์ ์ฑ ์ ๋ค์ด์ค๋ ํธ๋ํฝ ์ฐจ๋จ / ๋๊ฐ๋ ํธ๋ํฝ ํ์ฉ์ผ๋ก ์ค์ ํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค.
bash
sudo ufw default deny incoming
sudo ufw default allow outgoing
deny incoming - ์ธ๋ถ์์ ๋ค์ด์ค๋ ๋ชจ๋ ์ ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฐจ๋จ
allow outgoing - ์๋ฒ์์ ์ธ๋ถ๋ก ๋๊ฐ๋ ํต์ ์ ํ์ฉ
์ด ์ค์ ์ ์๋ฒ ๋ณด์์ ๊ธฐ๋ณธ์ ์ธ ์ ์ฑ ์ ๋๋ค.
์๋ฒ๋ฅผ ์๊ฒฉ์ผ๋ก ๊ด๋ฆฌํ๋ ๊ฒฝ์ฐ SSH ์ ์์ ๋จผ์ ํ์ฉํด์ผ ํฉ๋๋ค.
SSH๋ฅผ ํ์ฉํ์ง ์๊ณ ๋ฐฉํ๋ฒฝ์ ํ์ฑํํ๋ฉด ์๋ฒ ์ ์์ด ์ฐจ๋จ๋ ์ ์์ต๋๋ค.
ํน์ ์๋น์ค ์ ๊ทผ ํ์ฉ ๋ช ๋ น์ด
bash
sudo ufw allow http
ํน์ ํฌํธ ์ ๊ทผ ํ์ฉ ๋ช ๋ น์ด
bash
sudo ufw allow 443/tcp
ํน์ IP + ํฌํธ ํ์ฉ
bash
sudo ufw allow from 192.168.1.10 to any port 22 proto tcp
์ค์ ์ด ์๋ฃ๋๋ฉด ๋ฐฉํ๋ฒฝ์ ํ์ฑํํฉ๋๋ค.
bash
sudo ufw enable
ํ์ฑํ ์ ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
Firewall is active and enabled on system startup
ํ์ฌ ์ค์ ๋ ๋ฐฉํ๋ฒฝ ๊ท์น์ ํ์ธํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
bash
sudo ufw status
์์ธํ ์ ๋ณด๋ฅผ ๋ณด๋ ค๋ฉด
bash
sudo ufw status verbose
์์ ์ถ๋ ฅ
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip
To Action From
-- ------ ----
22/tcp ALLOW IN 192.168.1.10
80/tcp ALLOW IN Anywhere
443/tcp ALLOW IN Anywhere
ํ์ฉํ ํฌํธ๋ฅผ ์ ๊ฑฐํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
bash
sudo ufw delete allow 80/tcp
๋ฒํธ๋ก ์ญ์ ํ๋ ๋ฐฉ๋ฒ
๋จผ์ ๊ท์น ๋ชฉ๋ก ํ์ธ
bash
sudo ufw status numbered
์์
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 80/tcp ALLOW IN Anywhere
์ญ์
bash
sudo ufw delete 2
๋ฐฉํ๋ฒฝ์ ๋นํ์ฑํํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
bash
sudo ufw disable
UFW ๋ก๊ทธ๋ ๋ค์ ์์น์ ์ ์ฅ๋ฉ๋๋ค.
/var/log/ufw.log
Ubuntu ์๋ฒ๋ฅผ ์ด์ํ ๋ UFW๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋ณด์ ์ค์ ๋๊ตฌ์ ๋๋ค.
๋ณต์กํ iptables ์ค์ ์์ด๋ ๊ฐ๋จํ ๋ช ๋ น์ด๋ก ๋ฐฉํ๋ฒฝ ์ ์ฑ ์ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก ๋ค์ ์ค์ ์ ์ ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
incoming ์ฐจ๋จ
SSH ํ์ฉ
ํ์ํ ํฌํธ๋ง ํ์ฉ
UFW ํ์ฑํ
์ด๋ฌํ ์ค์ ์ ํตํด ์๋ฒ ๋ณด์์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์ต๋๋ค.