windows防火墙批量例外端口

时间:2022-01-21 13:57:59
Windows 自带的防火墙没有增加端口范围的功能,这让一些常见的配置变得非常麻烦(比如FTP被动模式下,就需要在防火墙上开启端口范围,如5000-6000,7100-7200这类),经过查询资料,使用以下cmd批处理内容,即可增加端口范围(用Windows 脚本编辑应该也能达到如下效果):

echo off
cls

set var=5000

:continue

set /a var+=1

echo add port %var%

 netsh firewall add portopening TCP %var% ftp_data_%var%

if %var% lss 5100 goto continue

echo complete
pause

将以上内容,保存为后缀名为cmd或bat的文件,执行即可将5000-5100范围的端口增加到防火墙配置中。

另外,如果使用linux lftp批处理模式,为了开启lftp客户端的被动转输,需要编辑文件~/.lftprc, 并增加以下配置:

set ftp:passive-mode on

 

 

PS:以上程序的执行需要管理员权限





====================================================================================、

1、改默认端口

在IIS6管理器中,展开FTP站点,用鼠标右键单击选择“属性”命令,然后在属性对话框中修改TCP端口(默认是21)。

改默认端口后,如果启用了TCP/IP筛选,则必须使用PASV模式访问FTP,为了安全需要手动指定PASV的端口范围。

在防火墙里开放以上端口。

2、修改IIS6下FTP服务器的PASV端口范围

IIS6的FTP里的PASV模式下默认端口范围1024 - 65535,连接时会从中随机选择到响应。这样的超大范围就给服务器安全带来的隐患,虽然可以通过一些方法减少端口范围,但范围都不能缩小到理想的范围内,正常情况下PASV的端口最多会使用到10个吧,就算是专门的FTP下载服务器最多20个也就够了。下面说说使用IIS管理实用程序Adsutil.vbs(C:\Inetpub\AdminScripts这个文件夹下面)修改FTP服务器的PASV端口的范围:

一般要做些这些设置后才能使用Adsutil.vbs,如下图的1和2:

windows防火墙批量例外端口

windows防火墙批量例外端口


使用命令行根据顺序执行
cd c:\Inetpub\AdminScripts
adsutil.vbs set /MSFTPSVC/PassivePortRange "10000-10009"

有可能有的服务器已经进行过安全配置,这样直接执行会提示失败信息,就需要使用cscript了,使用管理员用户登陆,继续命令行根据顺序执行以下命令
cd c:\Inetpub\AdminScripts
cscript adsutil.vbs set /MSFTPSVC/PassivePortRange "10000-10009"

本例开放指定的10个端口10000到10009
执行完毕后重新启动 FTP 服务,如果启动了防火墙,在防火墙中加这几个端口的例外。