lưu ý: # thẻ dòng lệnh không ngụ ý chỉ tập tin bó, tôi sẽ chấp nhận tập lệnh PowerShell hoặc bất kỳ tiện ích có sẵn miễn phí nào, có thể được bắt đầu từ dòng lệnh và hoàn thành công việc của nó mà không cần giám sát.
tl; dr
Làm thế nào để chuyển đổi chính xác các quy tắc tường lửa thành trạng thái đặt GUI, trên Windows Vista sang Windows 10 của bất kỳ ngôn ngữ giao diện (hiển thị) nào?
Xây dựng
Câu hỏi này tương tự như # 786383 , nhưng nó không giống nhau.
Về cơ bản, vì câu trả lời không tốt cho tôi:
set rule group="remote desktop" new enable=Yes
mở cổng 3389 cho các mạng công cộng và tôi muốn tránh điều đó. Ngoài ra, các ngôn ngữ Windows khác nhau có tên nhóm khác nhau, nhưng tôi cần một giải pháp phổ quát.netsh firewall set service type = remotedesktop mode = enable
cũng không hoạt động với tôi: nó không được chấp nhận kể từ win7 và chỉ cho phép truy cập mạng hiện tại (nếu bạn ở chế độ công khai, thì sẽ được mở cho các mạng công cộng và sau đó sẽ không hoạt động trong các mạng riêng).
Lưu ý rằng trước khi RDP được bật thông qua GUI, chỉ có một quy tắc cho mỗi giao thức cho RDP. Nhưng khi RDP được kích hoạt thông qua GUI, cổng chỉ được mở cho mạng riêng và mạng miền và quy tắc được phân chia cho việc này. Sau khi bật, có 4 quy tắc trong Windows 8+ và 2 quy tắc (không có UDP) trong Windows XP, Vista và 7.
Làm việc xung quanh tôi hiện đang sử dụng là thêm các quy tắc của riêng tôi:
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
nhưng điều đó thật tệ, bởi vì (không giống như tiêu chuẩn) chúng có thể được sửa đổi bởi người dùng, không có nhóm (để làm việc với các tập lệnh khác) và không bị tắt tự động khi tắt RDP thông qua GUI.
Ảnh chụp màn hình
Quy tắc tường lửa trước khi bật RDP qua GUI lần đầu tiên * **
Các quy tắc tương tự khi RDP được kích hoạt thông qua GUI (trạng thái tôi muốn nhận):
Và sau khi vô hiệu hóa RDP trong GUI:
Tôi sẽ không kể lại toàn bộ câu chuyện về cuộc chiến này với các tiện ích dòng lệnh windows, cho đến khi có ai đó hỏi. Đây là câu chuyện bằng tiếng Nga .