반응형
집에서 윈도우즈 서버나 일반 PC 방화벽 적용하기 위해 만들어 사용한 배치파일입니다.
방화벽 포트를 입력하세요 : 21
방화벽 포트를 입력하세요 : 21-29
_port_21 또는 _port_21-29 라는 이름으로 방화벽 설정에 등록됩니다
방화벽 IP를 입력하세요 : 192.168.219.113
방화벽 IP를 입력하세요 : 192.168.219.113-192.168.219.115
방화벽 IP를 입력하세요 : 192.168.219.113-192.168.219.115, 192.168.219.117
방화벽 Program 경로를 입력하세요 : "c:\Program Files\FileZilla FTP Client\filezilla.exe"
@echo off
@chcp 949
echo.
echo.
for /f "eol=; tokens=*" %%I in ('powershell Get-Clipboard') do set CLIPBOARD_TEXT=%%I
goto _start_work
:_start_work
echo.
echo [ Firewall Manager ver 2.1 ]
echo.
echo.
echo 1 : 방화벽 port 조회
echo 2 : 방화벽 port 추가
echo 3 : 방화벽 port 수정
echo 4 : 방화벽 port 삭제
echo.
echo 5 : 방화벽 설정이름 조회
echo 6 : 방화벽 설정이름 삭제
echo.
echo 7 : 방화벽 program 추가
echo 8 : 방화벽 program 삭제
echo.
echo 9 : 종료
echo.
set /p str="작업을 선택하세요 : "
set firewall_workNo=%str%
if %firewall_workNo% == 9 goto _end
if %firewall_workNo% == 1 goto _firewall_search
if %firewall_workNo% == 2 goto _firewall_add
if %firewall_workNo% == 3 goto _firewall_modify
if %firewall_workNo% == 4 goto _firewall_delete
if %firewall_workNo% == 5 goto _firewall_name_search
if %firewall_workNo% == 6 goto _firewall_name_delete
if %firewall_workNo% == 7 goto _firewall_program_add
if %firewall_workNo% == 8 goto _firewall_program_delete
goto _start_work
:_firewall_search
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 조회
echo.
set /p str="방화벽 포트를 입력하세요 : "
set firewall_port=%str%
echo.
netsh advfirewall firewall show rule name=_port_%firewall_port%
echo.
goto _end
:_firewall_add
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 추가
echo.
set /p str="방화벽 포트를 입력하세요 : "
set firewall_port=%str%
echo.
set /p str2="방화벽 IP를 입력하세요 : "
set firewall_ip=%str2%
netsh advfirewall firewall add rule name=_port_%firewall_port% dir=in action=allow localport=%firewall_port% protocol=tcp remoteIP=%firewall_ip%
echo.
netsh advfirewall firewall show rule name=_port_%firewall_port%
echo.
goto _end
:_firewall_modify
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 수정
echo.
set /p str="방화벽 포트를 입력하세요 : "
set firewall_port=%str%
echo.
set /p str2="방화벽 IP를 입력하세요 : "
set firewall_ip=%str2%
netsh advfirewall firewall set rule name=_port_%firewall_port% new remoteip=%firewall_ip%
echo.
netsh advfirewall firewall show rule name=_port_%firewall_port%
echo.
goto _end
:_firewall_delete
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 삭제
echo.
set /p str="방화벽 포트를 입력하세요 : "
set firewall_port=%str%
echo.
netsh advfirewall firewall delete rule name=_port_%firewall_port%
echo.
goto _end
:_firewall_name_search
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 설정이름 조회
echo.
set /p str="방화벽 설정이름을 입력하세요 : "
set firewall_name=%str%
echo.
netsh advfirewall firewall show rule name=%firewall_name%
echo.
goto _end
:_firewall_name_delete
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 설정이름 삭제
echo.
set /p str="방화벽 설정이름을 입력하세요 : "
set firewall_name=%str%
echo.
netsh advfirewall firewall delete rule name=%firewall_name%
echo.
goto _end
:_firewall_program_add
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 program 추가
echo.
echo 프로그램 전체경로를 클립보드에 미리 저장하세요.
echo (ex. c:\abc\123.exe )
echo.
echo.
set /p str="방화벽 설정이름을 입력하세요 : "
set firewall_name=%str%
echo.
echo 방화벽 program 경로 : %CLIPBOARD_TEXT%
pause
rem set /p str2="방화벽 program 경로를 입력하세요 : "
rem set firewall_program=%str2%
set firewall_program=%CLIPBOARD_TEXT%
netsh advfirewall firewall add rule name=%firewall_name% dir=in action=allow program=%firewall_program% enable=yes protocol=tcp
netsh advfirewall firewall add rule name=%firewall_name% dir=in action=allow program=%firewall_program% enable=yes protocol=udp
netsh advfirewall firewall show rule name=%firewall_name%
echo.
goto _end
:_firewall_program_delete
echo.
echo ***********************************
echo.
echo ▶▶▶ 방화벽 program 삭제
echo.
set /p str="방화벽 설정이름을 입력하세요 : "
set firewall_name=%str%
echo.
netsh advfirewall firewall delete rule name=%firewall_name%
echo.
goto _end
: _end
pause
반응형
'Windows > Command' 카테고리의 다른 글
* disk letter change & remove : 디스크 드라이브 문자 변경 및 제거 (0) | 2022.01.29 |
---|---|
* windows hostname change : 윈도우즈 컴퓨터 이름 바꾸기 (0) | 2022.01.29 |
* 200 PORT command successful. Consider using PASV (1) | 2022.01.14 |
windows system info / 윈도우즈 시스템 정보 보기 (0) | 2020.11.13 |
* windows server cmd line iis 설치 (0) | 2020.11.12 |