http 방화벽 허용 shell 만들기

yk hi·2021년 7월 7일

Linux

목록 보기
6/40

우선 아파치 서버를 설치 후 시작한다.
yum -y install httpd

systemctl start httpd

systemctl status httpd

실행해도 window에서는 못들어감

why?

포트를 허용하지 않았기 때문에

firewal-cmd --add-service=http --permanent

firewall-cmd --add-port=80/tcp --permanent --zone=public

firewall-cmd --reload

firewall-cmd --list-all

하지만 매번 허용해야하는 서비스와 포트번호가 다르기 때문에 이것을 쉘스크립트로 만들면 훨씬 효율적일 것이다.

그렇다면 이것을 자동화할 때
여기서 바뀌는 값은 무엇?

http 와 port

이것을 변수 처리하고
이걸 이제 쉘 스크립으로 만들어본다

vi firewallopen.sh

#!/bin/bash
echo 'input service: '
read serv
echo 'input port#: '
read port

firewall-cmd --add-service=servepermanentfirewalcmdaddport=serve --permanent firewal-cmd --add-port=port/tcp --permanet --zone=public
firewall-cmd --reload
firewall-cmd --list-all

저장

./firewallopen.sh
이상하게 실행이 되지 않는다

why?

쉘스크립은 무조건 권한을 줘야 실행가능하다

chmod +x fw_enable.sh

chmod를 통해 권한을 준후

./firewallopen.sh를 실행하면 ok

삭제는 다음과 같다
firewall-cmd --remove-service=http --permanent
firewall-cmd --remove-port=80/tcp --permanent --zone=public
firewall-cmd --reload
firewall-cmd --list-all

profile
엔지니어의 실력은 고통의 총합이다 <임백준 칼럼>

0개의 댓글