임의 사용자가 방화벽 (firewalld) 중지 못하도록 제어 방법

1.sudo 권한이 있으면 sudo 를 이용해 방화벽 서비스를 제어 할 수 있습니다.

[root@localhost ~]# sudo systemctl start firewalld.service, 
[root@localhost ~]# sudo systemctl reload firewalld.service
[root@localhost ~]# sudo systemctl stop firewalld.service

[root@localhost ~]# sudo firewall-cmd --zone=public --add-port=23431/tcp --permanent
[root@localhost ~]# sudo firewall-cmd --zone=public --add-port=45000/tcp --permanent
[root@localhost ~]# sudo firewall-cmd --reload

 

2.방화벽 서비스를 제어하고자 할때 root 패스워드를 입력해야만 가능하도록 적용 할 수 있습니다.

visudo 에서 아래와 같이 적용 합니다.

[root@localhost ~]# visudo
...
root ALL=(ALL) /usr/bin/firewall-cmd
root ALL=(ALL) /usr/bin/systemctl start firewalld.service, /usr/bin/systemctl reload firewalld.service, /usr/bin/systemctl status firewalld.service

>> firewalld 에 정책 추가, 삭제

>> systemd 를 이용한 중지, 시작 재시작등

 

firewalld 서비스를 제어 하기 위해서는 root 패스워드를 입력 해야만 가능합니다.

 

 

이렇게 하면 임의 사용자들 의해 방화벽 서비스가 제어 되는 경우를 방지 할 수 있습니다.


sudo 권한이 있는 분들도 root 패스워드를 알 수 없으므로 방화벽 서비스를 제어 할 수 없습니다.