ipsec IP安全策略操作 win7

  //禁止 win7 连接
        public static void BannedWINRunCmd()
        {
            string str = Console.ReadLine();
            System.Diagnostics.Process p = new System.Diagnostics.Process();
            p.StartInfo.FileName = "cmd.exe";
            p.StartInfo.UseShellExecute = false;    //是否使用操作系统shell启动
            p.StartInfo.RedirectStandardInput = true;//接受来自调用程序的输入信息
            p.StartInfo.RedirectStandardOutput = true;//由调用程序获取输出信息
            p.StartInfo.RedirectStandardError = true;//重定向标准错误输出
            p.StartInfo.CreateNoWindow = true;//不显示程序窗口
            p.Start();//启动程序

            //创建一个Ip策略(阻止所有连接)
            str = "netsh ipsec static add policy name=BannedConnectIP ";
            p.StandardInput.WriteLine(str);

            str = "netsh ipsec static add filterlist name=BannedConnectIP ";
            p.StandardInput.WriteLine(str);
            str = "netsh ipsec static add filter filterlist=BannedConnectIP srcaddr=me dstaddr=any ";
            p.StandardInput.WriteLine(str);
            str = "netsh ipsec static add filteraction name=BannedConnectIP action=block ";
            p.StandardInput.WriteLine(str);
            str = "netsh ipsec static add rule name=BannedConnectIP policy=BannedConnectIP filterlist=BannedConnectIP filteraction=BannedConnectIP ";
            p.StandardInput.WriteLine(str);

            //运行配置的IP地址访问
            string StrIPArr = ConfigurationSettings.AppSettings["RemoteIPAddr"];
            if (StrIPArr.Contains(‘,‘))
            {
                string[] strArr = StrIPArr.Split(‘,‘);
                for (int i = 0; i < strArr.Length; i++)
                {
                    string strarr = strArr[i].ToString();
                    str = "netsh ipsec static add filterlist name=AllowConnectIP(" + strarr + ") ";
                    p.StandardInput.WriteLine(str);
                    str = "netsh ipsec static add filter filterlist=AllowConnectIP(" + strarr + ") srcaddr=me dstaddr=" + strarr + " ";
                    p.StandardInput.WriteLine(str);
                    str = "netsh ipsec static add filteraction name=AllowConnectIP(" + strarr + ") action=permit ";
                    p.StandardInput.WriteLine(str);
                    str = "netsh ipsec static add rule name=AllowConnectIP(" + strarr + ") policy=BannedConnectIP filterlist=AllowConnectIP(" + strarr + ") filteraction=AllowConnectIP(" + strarr + ") ";
                    p.StandardInput.WriteLine(str);
                }
            }
            else
            {
                str = "netsh ipsec static add filterlist name=AllowConnectIP(" + StrIPArr + ") ";
                p.StandardInput.WriteLine(str);
                str = "netsh ipsec static add filter filterlist=AllowConnectIP(" + StrIPArr + ") srcaddr=me dstaddr=" + StrIPArr + " ";
                p.StandardInput.WriteLine(str);
                str = "netsh ipsec static add filteraction name=AllowConnectIP(" + StrIPArr + ") action=permit ";
                p.StandardInput.WriteLine(str);
                str = "netsh ipsec static add rule name=AllowConnectIP(" + StrIPArr + ") policy=BannedConnectIP filterlist=AllowConnectIP(" + StrIPArr + ") filteraction=AllowConnectIP(" + StrIPArr + ") ";
                p.StandardInput.WriteLine(str);
            }
            //指派
            str = "netsh ipsec static set policy name=BannedConnectIP assign=y";
            p.StandardInput.WriteLine(str);

            p.StandardInput.WriteLine("exit");
            p.StandardInput.AutoFlush = true;
            //向标准输入写入要执行的命令。这里使用&是批处理命令的符号,表示前面一个命令不管是否执行成功都执行后面(exit)命令,如果不执行exit命令,后面调用ReadToEnd()方法会假死
            //同类的符号还有&&和||前者表示必须前一个命令执行成功才会执行后面的命令,后者表示必须前一个命令执行失败才会执行后面的命令

            p.WaitForExit();//等待程序执行完退出进程
            p.Close();
        }

        //开放 win7 连接
        public static void AllowWINRunCmd()
        {
            string str = Console.ReadLine();
            System.Diagnostics.Process p = new System.Diagnostics.Process();
            p.StartInfo.FileName = "cmd.exe";
            p.StartInfo.UseShellExecute = false;    //是否使用操作系统shell启动
            p.StartInfo.RedirectStandardInput = true;//接受来自调用程序的输入信息
            p.StartInfo.RedirectStandardOutput = true;//由调用程序获取输出信息
            p.StartInfo.RedirectStandardError = true;//重定向标准错误输出
            p.StartInfo.CreateNoWindow = true;//不显示程序窗口
            p.Start();//启动程序

            //删除策略
            str = "netsh ipsec static del policy name=BannedConnectIP";
            p.StandardInput.WriteLine(str);

            p.StandardInput.WriteLine("exit");
            p.StandardInput.AutoFlush = true;
            //向标准输入写入要执行的命令。这里使用&是批处理命令的符号,表示前面一个命令不管是否执行成功都执行后面(exit)命令,如果不执行exit命令,后面调用ReadToEnd()方法会假死
            //同类的符号还有&&和||前者表示必须前一个命令执行成功才会执行后面的命令,后者表示必须前一个命令执行失败才会执行后面的命令

            p.WaitForExit();//等待程序执行完退出进程
            p.Close();
        }
时间: 2024-09-28 21:30:32

ipsec IP安全策略操作 win7的相关文章

Windows 2008 R2 IP安全策略设置

Win+r -->secpol.msc --> 回车  打开 安全策略管理控制台 左侧栏目点击IP安全策略,在本地计算机. 右侧点击右键->创建IP安全策略. 下一步 -填写名字与描述  --下一步...完成 双击刚刚创建的条目打开服务器安全策略 属性. 点击添加,创建一个新规则, 再次点击添加,增加一个筛选器,这个筛选器我们起名为 Close 以用来匹配并关闭所有端口,点击添加,这里可以使用向导一步一步设置,可以使用默认设置, (镜像,源地址:任何IP地址,目标地址:任何IP地址 ,协

WIN2003使用IP安全策略只允许指定IP远程桌面连接

一,新建IP安全策略 WIN+R打开运行对话框,输入gpedit.msc进入组策略编辑器. 依次打开“本地计算机”策略--计算机配置--Windows设置--安全设置--IP安全策略,在 本地计算机上. 或是控制面板--管理工具--本地安全策略--IP安全策略,在 本地计算机上. 在右面的空白处右击,选择第一个菜单:创建IP安全策略,弹出的IP安全策略向导对话框. 点击下一步. 在名称里输入3389过虑,下一步. 取消激活默认响应规则,下一步. 选中编辑属性,下一步. 二,新建IP筛选器 在弹出

Windows Server IP安全策略——如何屏蔽IP

在Windows Server 2008环境下,通过"IP安全策略"可以实现屏蔽某指定IP或一个完整网段的全部IP.便于理解整个操作过程可分为三部分. 创建IP筛选器列表: 创建执行动作(许可或阻止等): 创建IP安全策略将列表与动作组合: 一.创建IP筛选器列表 1. 在[开始]中找到[管理工具]选中[本地安全策略]运行,或输入命令"secpol.msc"打开[本地安全策略]窗口. 2. 在[本地安全策略]窗口中右键[IP安全策略,在本地计算机]选择[管理IP筛选

[Windows Server 2008] IP安全策略限制端口方法

★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com ★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频. ★ 本节我们将带领大家:限制1433端口的安全策略 相比于Windows自带的防火墙,采用安全策略限制端口有更灵活的限制规则. 本节将演示只允许特定的远程服务器访问本机的1433端口(SQL Server服务). 操作思路:禁止所有用户访问1433端口,只允许个别IP访问.(安全策略里面允许的优先级大于禁 止) 1.添加“IP筛选”

windows server ip安全策略

需求:公司一台windows服务器涉及到公司的一些重要的项目.所以需要只能允许指定的公网ip才能登陆!于是通过windows的ip安全策略来实现. 注意:首先先放行自己,再去拒绝别人去连接 操作系统:windows server 2003 1. 找到[开始]->[管理工具]->[本地安全策略] (1)创建ip安全策略 在右边的空白处右击创建ip安装策略 点击"下一步" ip安全策略向导:命名(3389过滤) 点击"下一步" 激活默认响应规则的对勾去掉.

添加IP安全策略 远离系统Ping漏洞的威胁

懂得网络的人对于Ping这个最基本的网络命令一定很熟悉,它是一个非常好用的TCP/IP工具.它可以向你提供的地址发送一个小的数据包,然后侦听这台机器是否有“回答”.你可以使用机器的 Internet 地址,如:ping 192.78.222.81,或者也可使用机器名,如:ping MyComputer. 在使用Ping时,Ping工具程序发送一个ICMP(Internet Control Management Protocol,简称Internet控制管理协议)应答请求给对方,以验证另一台计算机

【工作记录】c#操作win7注册表

这里讲一 C# 小列子(高手请绕过此地! ), 我们平时都是在xp开发比较多...不过现在很多开发人员也在win7下开发了. 下面是在 LocalMachine 下的 一下注册表操作 ,就不详说了 private static void DeleteRegistry(string name){string[] aimnames;RegistryKey hkml = Registry.LocalMachine;RegistryKey software = hkml.OpenSubKey("SOFT

Linux基础命令---IP路由操作

ip ip指令可以显示或操作路由.网路设备,设置路由策略和通道. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora.   1.语法      ip [选项]  OBJECT  COMMAND [help] OBJECT对象可以是:link,网络设备:addr,设备的协议地址:route,路由表:rule,策略:neigh,arp缓存:tunnel,ip通道:maddr,多播地址:mroute,多播路由 COMMAND是操作命令,不同的

[svc]linux的ip命令操作接口和路由表

参考: https://www.tecmint.com/ip-command-examples/ 学会linux的配置ip,配置网关,添加路由等命令 man ip man ip address man ip route ip address help 可简写 ip a s 操作&查看接口 - 查看所有接口ip+mac ip a - 查看eth0的ip+mac ip a s eth0 - 给一个接口设置多个ip (ip addr add) ip a a 12.1.1.1/24 dev eth0 i