หมายเหตุ: # แท็กบรรทัดคำสั่งไม่ได้หมายความถึงแบทช์ไฟล์เท่านั้นฉันจะยอมรับสคริปต์ PowerShell หรือยูทิลิตีที่มีให้ใช้งานได้ฟรีซึ่งสามารถเริ่มจากบรรทัดคำสั่งและทำงานให้เสร็จโดยไม่ต้องใส่ข้อมูล
TL; DR
วิธีแปลงกฎไฟร์วอลล์โดยไม่ตั้งใจให้ตรงกับสถานะของ GUI ใน Windows Vista ไปเป็น Windows 10 ของส่วนต่อประสาน (แสดง) ภาษาได้อย่างไร
ได้ชี้แจงรายละเอียด
คำถามนี้คล้ายกับ# 786383แต่ไม่เหมือนกัน
โดยพื้นฐานแล้วเพราะคำตอบไม่ดีสำหรับฉัน:
set rule group="remote desktop" new enable=Yes
เปิดพอร์ต 3389 สำหรับเครือข่ายสาธารณะและฉันต้องการหลีกเลี่ยง นอกจากนี้ภาษาต่าง ๆ ของ Windows มีชื่อกลุ่มต่างกัน แต่ฉันต้องการโซลูชันที่เป็นสากลnetsh firewall set service type = remotedesktop mode = enable
ไม่ทำงานสำหรับฉันเช่นกัน: มันเลิกใช้แล้วตั้งแต่ win7 และอนุญาตให้ rdp สำหรับเครือข่ายปัจจุบันเท่านั้น (หากคุณอยู่ในที่สาธารณะ 3389 จะถูกเปิดสำหรับเครือข่ายสาธารณะและจะไม่ทำงานในเครือข่ายส่วนตัวในภายหลัง)
โปรดทราบว่าก่อนที่จะเปิดใช้งาน RDP ผ่าน GUI จะมีเพียงหนึ่งกฎต่อโปรโตคอลสำหรับ RDP แต่เมื่อเปิดใช้งาน RDP ผ่าน GUI พอร์ตจะเปิดขึ้นสำหรับเครือข่ายส่วนตัวและโดเมนเท่านั้นและจะแบ่งกฎสำหรับสิ่งนี้ หลังจากเปิดใช้งานมีกฎ 4 ข้อใน Windows 8+ และ 2 กฎ (ไม่มี UDP) ใน Windows XP, Vista และ 7
การหลีกเลี่ยงสิ่งที่ฉันใช้อยู่ในขณะนี้คือการเพิ่มกฎของตัวเอง:
netsh.exe advfirewall firewall add rule name="Remote Desktop - User Mode (TCP-In)" dir=in action=allow program="%%SystemRoot%%\system32\svchost.exe" service="TermService" description="Inbound rule for the Remote Desktop service to allow RDP traffic. [TCP 3389] added by LogicDaemon's script" enable=yes profile=private,domain localport=3389 protocol=tcp
netsh.exe advfirewall firewall add rule name="Remote Desktop - User Mode (UDP-In)" dir=in action=allow program="%%SystemRoot%%\system32\svchost.exe" service="TermService" description="Inbound rule for the Remote Desktop service to allow RDP traffic. [UDP 3389] added by LogicDaemon's script" enable=yes profile=private,domain localport=3389 protocol=udp
แต่ไม่ดีเนื่องจาก (ไม่เหมือนกับมาตรฐาน) ผู้ใช้สามารถแก้ไขได้โดยไม่มีกลุ่ม (ทำงานกับสคริปต์อื่น ๆ ) และจะไม่ถูกปิดใช้งานโดยอัตโนมัติเมื่อ RDP ถูกปิดผ่าน GUI
ภาพหน้าจอ
กฎไฟร์วอลล์ก่อนเปิดใช้งาน RDP ผ่าน GUI เป็นครั้งแรก* **
กฎเดียวกันเมื่อเปิดใช้งาน RDP ผ่าน GUI (สถานะที่ฉันต้องการ):
และหลังจากปิดการใช้งาน RDP ใน GUI:
ฉันจะไม่เล่าเรื่องราวทั้งหมดของการต่อสู้นี้ด้วยโปรแกรมอรรถประโยชน์บรรทัดคำสั่งของ windows จนกว่าจะมีคนถาม นี่คือว่าเรื่องในรัสเซีย