글 수 369
사실 방화벽이 바뀌니까. 뭔가 엄청난 것이 바뀐 것 같은 느낌이 들더군요.
그냥 firewall을 내려버리고 iptales로 다시 갈까? 하는 생각이 들기도 하고요.
일단 only text환경이라서 firewall-cmd 명령어를 사용해야 됩니다.
상태확인용 명령어는 아래와 같이 간단히 사용하면 될 것 같습니다.
저의 경우 port on / off 정도입니다.
firewall-cmd --get-zones --> List your zones
firewall-cmd --get-services --> List all supported zones under the current zone
firewall-cmd --get-default-zone --> List default zone
firewall-cmd --set-default-zone=zone --> To set your default zone
firewall-cmd --get-active-zones --> Print currently active zones
firewall-cmd --list-all-zones --> List everything added for or enabled in all zones.
그후에
firewall-cmd --permanent --add-service ssh
이런 식으로 service를 등록하시면 됩니다.
add 반대는 remove 입니다.
해당 서비스는 firewall-cmd --get-services 로 확인 가능하고..
해당 서비스의 xml 파일이 존재하는 곳은
/usr/lib/firewalld/services
입니다.
문제는...저는 hyper-v에서 text모드로 dhcp로 설치를 했더만.. 아무리 해도 public zone이 active가 안되네요.
나중에 보니.. 인터페이스 등록이 안되어서 그런거였습니다.
firewall-cmd --permanent --zone=public --change-interface=eth0
이렇게 해서 public zone에 eth0 인터페이스를 추가하니까.정상적으로 방화벽이 동작합니다. ^^
최종적으로 생성되는 public.xml 파일보니 아래와 같이 인터페이스가 추가되더만요.
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
<interface name="eth0"/>
<service name="dhcpv6-client"/>
<service name="ssh"/>
</zone>
포트 온 오프 정도는 간략화 된 것 같습니다.
일단 맘에 들고요. 다른 툴이랑 호환성은 잘 모르겠습니다.
이제 php나 아파치도 한번 깔아봐야겠네요.