private static bool CreateDefaultRules() { bool ret = true; var rules = FirewallHelper.GetRules(); using (ServiceController sc = new ServiceController()) { string rname; // Windows 8 or higher if (Environment.OSVersion.Version >= new System.Version(6, 2)) { rname = String.Format(Resources.RULE_NAME_FORMAT, "Windows Applications (auto)"); if (rules.All(r => r.Name != rname)) { CustomRule newRule = new CustomRule(rname, Environment.SystemDirectory + "\\wwahost.exe", null, null, (string)null, Protocol.ANY, null, null, null, FirewallHelper.GetGlobalProfile(), CustomRule.CustomRuleAction.Allow); ret = ret && FirewallHelper.AddRule(newRule.GetPreparedRule(false)); } } sc.ServiceName = "wuauserv"; rname = String.Format(Resources.RULE_NAME_FORMAT, sc.DisplayName + " (auto)"); if (rules.All(r => r.Name != rname + " [R:80,443]")) { CustomRule newRule = new CustomRule(rname, Environment.SystemDirectory + "\\svchost.exe", null, null, "wuauserv", Protocol.TCP, null, "80,443", null, FirewallHelper.GetGlobalProfile(), CustomRule.CustomRuleAction.Allow); ret = ret && FirewallHelper.AddRule(newRule.GetPreparedRule(false)); } sc.ServiceName = "bits"; rname = String.Format(Resources.RULE_NAME_FORMAT, sc.DisplayName + "(auto)"); if (rules.All(r => r.Name != rname + " [R:80,443]")) { CustomRule newRule = new CustomRule(rname, Environment.SystemDirectory + "\\svchost.exe", null, null, "bits", Protocol.TCP, null, "80,443", null, FirewallHelper.GetGlobalProfile(), CustomRule.CustomRuleAction.Allow); ret = ret && FirewallHelper.AddRule(newRule.GetPreparedRule(false)); } sc.ServiceName = "cryptsvc"; rname = String.Format(Resources.RULE_NAME_FORMAT, sc.DisplayName + "(auto)"); if (rules.All(r => r.Name != rname + " [R:80]")) { CustomRule newRule = new CustomRule(rname, Environment.SystemDirectory + "\\svchost.exe", null, null, "cryptsvc", Protocol.TCP, null, "80", null, FirewallHelper.GetGlobalProfile(), CustomRule.CustomRuleAction.Allow); ret = ret && FirewallHelper.AddRule(newRule.GetPreparedRule(false)); } //sc.ServiceName = "aelookupsvc"; //rname = String.Format(Resources.RULE_NAME_FORMAT, sc.DisplayName + "(auto)"); //if (rules.All(r => r.Name != rname + " [R:80]")) //{ // CustomRule newRule = new CustomRule(rname, Environment.SystemDirectory + "\\svchost.exe", null, null,"aelookupsvc", (int)NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_TCP, null, "80", null, FirewallHelper.GetGlobalProfile(), "A"); // ret = ret && FirewallHelper.AddRule(newRule.GetPreparedRule(false)); //} } return(ret); }
private void initAllRules() { try { allrules = FirewallHelper.GetRules().OrderBy(r => r.Name); } catch (Exception e) { LogHelper.Error("Unable to load all FW rules", e); } }
private void initRules() { LogHelper.Debug("Retrieving all rules..."); try { allRules = FirewallHelper.GetRules(AlsoGetInactive: true).ToList(); } catch (Exception e) { LogHelper.Error("Unable to load all FW rules", e); } }
public GetRulesResponse GetRules() { ToastHelper.PopToast("Get rules"); //var chain = FirewallHelper.GetRules(); //var dtoRules = chain.ToModel(); var rules = FirewallHelper.GetRules(); var response = new GetRulesResponse() { UfwResult = rules }; return(response); }