欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#如何禁止指定的IP連接本機指定的端口?例如不允許194.16.5.13連接3389端口,但允許他做其他訪問IIS網站等操作

admin
2025年3月13日 16:31 本文熱度 516

在C#中可以通過Windows防火墻規則實現該需求,以下是分步解決方案:

  1. 原理說明

  • 通過操作Windows防火墻的入站規則

  • 針對特定IP和端口創建阻止規則

  • 不影響其他端口(如IIS的80/443端口)

  1. 實現代碼

using System.Diagnostics;


public class FirewallHelper

{

    // 創建阻止規則

    public static void BlockIPPort(string ip, int port)

    {

        string ruleName = $"Block_{ip}_Port_{port}";

        string command = $"advfirewall firewall add rule name=\"{ruleName}\" " +

                          $"dir=in action=block protocol=TCP " +

                          $"remoteip={ip} localport={port}";


        ExecuteNetshCommand(command);

    }


    // 刪除規則(可選)

    public static void RemoveBlockRule(string ip, int port)

    {

        string ruleName = $"Block_{ip}_Port_{port}";

        string command = $"advfirewall firewall delete rule name=\"{ruleName}\"";


        ExecuteNetshCommand(command);

    }


    private static void ExecuteNetshCommand(string command)

    {

        ProcessStartInfo psi = new ProcessStartInfo

        {

            FileName = "netsh",

            Arguments = command,

            Verb = "runas", // 請求管理員權限

            WindowStyle = ProcessWindowStyle.Hidden,

            UseShellExecute = true

        };


        try

        {

            Process.Start(psi)?.WaitForExit();

        }

        catch (Exception ex)

        {

            Console.WriteLine($"執行命令失敗: {ex.Message}");

        }

    }

}


// 使用示例

FirewallHelper.BlockIPPort("194.16.5.13", 3389);

  1. 使用說明

  • 需要以管理員權限運行程序

  • 規則將永久生效直到手動刪除

  • 可通過Windows防火墻設置界面查看規則:

    1. 打開"高級安全Windows Defender防火墻"

    2. 在"入站規則"中查找規則名稱(例如:Block_194.16.5.13_Port_3389)

  1. 驗證方法

# 查看所有防火墻規則

netsh advfirewall firewall show rule name=all


# 測試端口連通性(從被禁IP執行)

telnet 目標服務器IP 3389

  1. 注意事項

  • 確保程序以管理員身份運行(可在項目屬性中設置)

  • 規則名稱需要唯一,避免重復創建

  • 不會影響目標IP訪問其他端口(如80端口)

  • 實際部署時建議添加異常處理機制

  1. 替代方案
    如果希望僅在應用程序運行時生效,可以使用Socket層過濾(需要處理網絡驅動開發),但推薦使用防火墻方案,因為:

  • 系統級防護更可靠

  • 無需保持應用程序運行

  • 性能影響更小

此方案通過系統防火墻實現精準的IP+端口過濾,同時保持其他端口的正常訪問權限,滿足需求中的訪問控制要求。


該文章在 2025/3/13 18:53:59 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved