[Linux] firewalld ์ค์ ๋ฐฉ๋ฒ (CentOS / RHEL ๋ฐฉํ๋ฒฝ ๊ฐ์ด๋)
๋ฆฌ๋ ์ค ์๋ฒ๋ฅผ ์ด์ํ ๋ ๋ฐฉํ๋ฒฝ ์ค์ ์ ๋งค์ฐ ์ค์ํ ๋ณด์ ์์์ ๋๋ค.
CentOS 7 ์ดํ์ RHEL ๊ณ์ด ์์คํ ์์๋ ๊ธฐ๋ณธ ๋ฐฉํ๋ฒฝ์ผ๋ก **firewalld**๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
firewalld๋ ๊ธฐ์กด **iptables**๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ฉฐ, ๋ณด๋ค ํธ๋ฆฌํ ๋ฐฉ์์ผ๋ก ๋ฐฉํ๋ฒฝ ๊ท์น์ ๊ด๋ฆฌํ ์ ์๋๋ก ์ค๊ณ๋ ์๋น์ค์ ๋๋ค.
์ด๋ฒ ๊ธ์์๋ firewalld์ ๊ฐ๋ , ๊ธฐ๋ณธ ๋ช ๋ น์ด, ํฌํธ ํ์ฉ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด ๋ณด๊ฒ ์ต๋๋ค.
firewalld๋ ๋ฌด์์ธ๊ฐ
firewalld๋ Linux ๋ฐฉํ๋ฒฝ์ ๊ด๋ฆฌํ๋ ๋ฐ๋ชฌ ์๋น์ค์ ๋๋ค.
ํน์ง
- ๋์ ๋ฐฉํ๋ฒฝ ๊ด๋ฆฌ
- ์๋น์ค ๊ธฐ๋ฐ ๊ท์น ์ค์
- Zone ๊ธฐ๋ฐ ๋ณด์ ์ ์ฑ
- ์ฌ์์ ์์ด ๊ท์น ์ ์ฉ
firewalld๋ ๋ด๋ถ์ ์ผ๋ก Linux ์ปค๋์ **Netfilter ์์คํ ์ ์ฌ์ฉํ์ฌ ๋คํธ์ํฌ ํธ๋ํฝ์ ์ ์ดํฉ๋๋ค.
firewalld ์๋น์ค ํ์ธ
firewalld ์ํ ํ์ธ
systemctl status firewalld์๋น์ค ์์
systemctl start firewalld๋ถํ ์ ์๋ ์คํ
systemctl enable firewalldfirewalld ๊ธฐ๋ณธ ๊ฐ๋ (Zone)
firewalld์ ํต์ฌ ๊ฐ๋ ์ Zone์ ๋๋ค.
Zone์ ๋คํธ์ํฌ ์ ๋ขฐ ์์ค์ ๋ฐ๋ผ ๋ฐฉํ๋ฒฝ ์ ์ฑ ์ ์ ์ฉํ๋ ๋ฐฉ์์ ๋๋ค.
๋ํ์ ์ธ Zone
Zone์ค๋ช
trusted - ๋ชจ๋ ํธ๋ํฝ ํ์ฉ
home - ๋ด๋ถ ๋คํธ์ํฌ
public - ๊ณต์ฉ ๋คํธ์ํฌ
work - ํ์ฌ ๋คํธ์ํฌ
drop - ๋ชจ๋ ํจํท ์ฐจ๋จ
ํ์ฌ Zone ํ์ธ
firewall-cmd --get-default-zonefirewalld ํ์ฌ ์ค์ ํ์ธ
์ ์ฒด ์ค์ ํ์ธ
firewall-cmd --list-allํน์ zone ํ์ธ
firewall-cmd --zone=public --list-all์ ์ฑ ์ถ๊ฐ ๋ฐ ์ญ์
ํฌํธ ํ์ฉ ๋ฐฉ๋ฒ
firewall-cmd --add-port=80/tcp์๋น์ค ๊ธฐ๋ฐ ํ์ฉ ๋ฐฉ๋ฒ
firewall-cmd --add-service=sshํน์ IP ํ์ฉ
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.10" accept'ํน์ IP ์ฐจ๋จ
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.100" drop'ํฌํธ ์ ๊ฑฐ
firewall-cmd --remove-port=80/tcppermanent ์ค์ ์ ๊ฑฐ
firewall-cmd --remove-port=80/tcp --permanent์๋น์ค ๋ชฉ๋ก ํ์ธ
firewall-cmd --get-services์๊ตฌ ์ค์ (permanent)
firewalld ์ค์ ์ ๋ ๊ฐ์ง ๋ชจ๋๊ฐ ์์ต๋๋ค.
๋ชจ๋ ์ค๋ช
runtime - ํ์ฌ ์คํ ์ค ์ค์
permanent - ์ฌ๋ถํ ํ ์ ์ง
์
firewall-cmd --add-port=80/tcp --permanent์ค์ ์ ์ฉ
firewall-cmd --reloadfirewalld vs iptables
firewalld๋ iptables ๊ธฐ๋ฐ์ผ๋ก ๋์ํ์ง๋ง ๊ด๋ฆฌ ๋ฐฉ์์ด ๋ค๋ฆ ๋๋ค.
ํญ๋ชฉfirewalldiptables๊ด๋ฆฌ ๋ฐฉ์๋์ ๊ด๋ฆฌ์๋ ๊ด๋ฆฌ์ค์ ๊ตฌ์กฐzone ๊ธฐ๋ฐrule ๊ธฐ๋ฐ์ ์ฉ ๋ฐฉ์reload ํ์์ฆ์ ์ ์ฉ๋์ด๋์ฌ์์ด๋ ค์
์ผ๋ฐ์ ์ผ๋ก CentOS ํ๊ฒฝ์์๋ firewalld๋ฅผ ์ฌ์ฉํ๋ฉฐ,
๋ณต์กํ ๋คํธ์ํฌ ์ค์ ์ด ํ์ํ ๊ฒฝ์ฐ iptables๋ฅผ ์ง์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค.
์ ๋ฆฌ
firewalld๋ CentOS / RHEL ํ๊ฒฝ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋๋ ๋ฐฉํ๋ฒฝ ๊ด๋ฆฌ ๋๊ตฌ์ ๋๋ค.
์ฃผ์ ํน์ง
- zone ๊ธฐ๋ฐ ๋ณด์ ์ ์ฑ
- ์๋น์ค ๊ธฐ๋ฐ ํฌํธ ๊ด๋ฆฌ
- ๋์ ๋ฐฉํ๋ฒฝ ์ค์
iptables๋ณด๋ค ์ค์ ์ด ๊ฐ๋จํ๋ฉฐ ์๋ฒ ์ด์ ์ ๊ธฐ๋ณธ ๋ฐฉํ๋ฒฝ ๊ด๋ฆฌ ๋๊ตฌ๋ก ๋ง์ด ์ฌ์ฉ๋ฉ๋๋ค.