Cách chạy các lệnh PowerShell trên máy tính từ xa
PowerShell Remote cho phép bạn chạy các lệnh PowerShell hoặc truy cập các phiên PowerShell đầy đủ trên các hệ thống Windows từ xa. Nó tương tự như SSH để truy cập các thiết bị đầu cuối từ xa trên các hệ điều hành khác.
PowerShell bị khóa theo mặc định, vì vậy bạn sẽ phải bật PowerShell Remote trước khi sử dụng. Quá trình thiết lập này phức tạp hơn một chút nếu bạn đang sử dụng nhóm làm việc thay vì tên miền - ví dụ: trên mạng gia đình - nhưng chúng tôi sẽ hướng dẫn bạn thực hiện điều đó.
Kích hoạt tính năng từ xa PowerShell trên PC mà bạn muốn truy cập từ xa
Bước đầu tiên của bạn là bật PowerShell Remote trên PC mà bạn muốn thực hiện kết nối từ xa. Trên PC đó, bạn sẽ cần mở PowerShell với các đặc quyền quản trị.
Trong Windows 10, nhấn Windows + X, sau đó chọn PowerShell (Quản trị viên) từ menu Power User.
Trong Windows 7 hoặc 8, nhấn Bắt đầu, sau đó nhập vào powershell. Hãy nhấp chuột phải vào kết quả và chọn chạy Run làm quản trị viên.
Trong cửa sổ PowerShell, nhập lệnh ghép ngắn sau (tên của PowerShell cho một lệnh), rồi nhấn Enter:
Kích hoạt-PSRemote -Force
Lệnh này khởi động dịch vụ WinRM, đặt nó tự động bắt đầu với hệ thống của bạn và tạo quy tắc tường lửa cho phép kết nối đến. Các -Lực lượng
một phần của lệnh ghép ngắn yêu cầu PowerShell thực hiện các hành động này mà không nhắc bạn từng bước.
Nếu PC của bạn là một phần của miền, đó là tất cả các thiết lập bạn phải làm. Bạn có thể bỏ qua trước để kiểm tra kết nối của bạn. Nếu máy tính của bạn là một phần của nhóm làm việc - mà chúng có thể nằm trên mạng gia đình hoặc doanh nghiệp nhỏ - bạn có thêm một chút công việc thiết lập để làm.
Lưu ý: Thành công của bạn trong việc thiết lập điều khiển từ xa trong môi trường miền phụ thuộc hoàn toàn vào thiết lập mạng của bạn. Từ xa có thể bị vô hiệu hóa - hoặc thậm chí được bật - tự động theo chính sách nhóm được cấu hình bởi quản trị viên. Bạn cũng có thể không có quyền mà bạn cần để chạy PowerShell với tư cách quản trị viên. Như mọi khi, hãy kiểm tra với quản trị viên của bạn trước khi bạn thử bất cứ điều gì như thế này. Họ có thể có lý do chính đáng cho việc không cho phép thực hành hoặc họ có thể sẵn sàng thiết lập nó cho bạn.
Thiết lập nhóm làm việc của bạn
Nếu máy tính của bạn không có tên miền, bạn cần thực hiện thêm một vài bước để thiết lập mọi thứ. Bạn đã kích hoạt tính năng Từ xa trên PC mà bạn muốn kết nối, như chúng tôi đã mô tả trong phần trước.
Lưu ý: Để PowerShell Remote hoạt động trong môi trường nhóm làm việc, bạn phải định cấu hình mạng của mình là mạng riêng, không công khai ,. Để biết thêm về sự khác biệt - và cách thay đổi thành mạng riêng nếu bạn đã thiết lập mạng công cộng - hãy xem hướng dẫn của chúng tôi về mạng riêng so với mạng công cộng.
Tiếp theo, bạn cần định cấu hình cài đặt Trustedhosts trên cả PC mà bạn muốn kết nối và PC (hoặc PC) bạn muốn kết nối, vì vậy các máy tính sẽ tin tưởng lẫn nhau. Bạn có thể làm điều này theo một trong hai cách.
Nếu bạn đang sử dụng mạng gia đình nơi bạn muốn tiếp tục và tin tưởng bất kỳ PC nào kết nối từ xa, bạn có thể nhập lệnh ghép ngắn sau trong PowerShell (một lần nữa, bạn sẽ cần chạy nó với tư cách Quản trị viên).
Set-Item wsman: \ localhost \ client \ Trustedhosts *
Dấu hoa thị là một biểu tượng ký tự đại diện cho tất cả các PC. Thay vào đó, nếu bạn muốn hạn chế các máy tính có thể kết nối, bạn có thể thay thế dấu hoa thị bằng danh sách địa chỉ IP hoặc tên máy tính được phân tách bằng dấu phẩy cho các PC được phê duyệt.
Sau khi chạy lệnh đó, bạn sẽ cần khởi động lại dịch vụ WinRM để cài đặt mới của bạn có hiệu lực. Nhập lệnh ghép ngắn sau rồi nhấn Enter:
Khởi động lại dịch vụ WinRM
Và hãy nhớ rằng, bạn sẽ cần chạy hai lệnh ghép ngắn đó trên PC mà bạn muốn kết nối, cũng như trên bất kỳ PC nào bạn muốn kết nối từ.
Kiểm tra kết nối
Bây giờ bạn đã cài đặt PC của mình cho PowerShell Remote, đã đến lúc kiểm tra kết nối. Trên PC bạn muốn truy cập hệ thống từ xa, hãy nhập lệnh ghép ngắn sau vào PowerShell (thay thế MÁY TÍNH MÁY TÍNH bằng tên hoặc địa chỉ IP của PC từ xa), rồi nhấn Enter:
Test-WsMan MÁY TÍNH
Lệnh đơn giản này kiểm tra xem dịch vụ WinRM có chạy trên PC từ xa không. Nếu nó hoàn thành thành công, bạn sẽ thấy thông tin về dịch vụ WinRM của máy tính từ xa trong cửa sổ - biểu thị rằng WinRM được bật và PC của bạn có thể giao tiếp. Nếu lệnh thất bại, bạn sẽ thấy một thông báo lỗi thay thế.
Thực hiện một lệnh từ xa duy nhất
Để chạy lệnh trên hệ thống từ xa, hãy sử dụng Lệnh gọi
cmdlet sử dụng cú pháp sau:
Gọi lệnh -ComputerName MÁY TÍNH -ScriptBlock Mission -credential USERNAME
MÁY TÍNH NỀN TẢNG Đại diện cho tên hoặc địa chỉ IP của PC từ xa. CÂU CHUYỆN THÔNG MINH là lệnh bạn muốn chạy. Tên người dùng tên miền là tên người dùng bạn muốn chạy lệnh như trên máy tính từ xa. Bạn sẽ được nhắc nhập mật khẩu cho tên người dùng.
Đây là một ví dụ. Tôi muốn xem nội dung của thư mục C: \ trên máy tính từ xa có địa chỉ IP 10.0.0.22. Tôi muốn sử dụng tên người dùng, wjgle, vì vậy tôi sẽ sử dụng lệnh sau:
Gọi lệnh -ComputerName 10.0.0.22 -ScriptBlock Get-ChildItem C: \ -credential wjgle
Bắt đầu một phiên từ xa
Nếu bạn có một vài lệnh ghép ngắn bạn muốn chạy trên PC từ xa, thay vì liên tục nhập lệnh ghép ngắn Invoke-Command và địa chỉ IP từ xa, bạn có thể bắt đầu một phiên từ xa thay thế. Chỉ cần gõ lệnh ghép ngắn sau và nhấn Enter:
Enter-PSSession -ComputerName MÁY TÍNH-NGƯỜI DÙNG TÍNH NĂNG
Một lần nữa, hãy thay thế MÁY TÍNH ĐIỆN THOẠI bằng tên hoặc địa chỉ IP của PC từ xa và thay thế NGƯỜI DÙNG NGƯỜI DÙNG bằng tên tài khoản người dùng bạn muốn gọi.
Lời nhắc của bạn thay đổi để chỉ ra máy tính từ xa mà bạn đã kết nối và bạn có thể thực thi bất kỳ số lệnh ghép ngắn PowerShell nào trên hệ thống từ xa.