1. Giới thiệu

Gần đây, chúng tôi nhận được khá nhiều câu hỏi của khách hàng về việc làm thế nào để các ứng dụng macro vẫn tiếp tục chạy khi thoát Remote Desktop. Do ứng dụng Macro cần phải có một phiên làm việc (session) thì mới có thể hoạt động được, nên trong bài viết này chúng tôi sẽ hướng dẫn quý khách cách để có thể giữ một Session ngay cả khi thoát Remote Desktop.

Session là một khái niệm trừu tượng trong Windows. Nó bao gồm các thành phần giao diện, các cài đặt, các file dữ liệu mà hệ điều hành Windows cung cấp cho từng user. Một session mới sẽ được khởi tạo khi User đăng nhập vào Windows1 User không được tồn tại 2 session. Có nhiều loại session, nhưng trong khuôn khổ bài viết này chúng tôi chỉ đề cập đến hai loại session mà khách hàng sẽ sử dụng chủ yếu. Đó là Console session và Remote Desktop session.

  • Console session là phiên làm việc sử dụng một màn hình hiển thị (monitor). Đó có thể là màn hình vật lý hoặc màn hình ảo. Ví dụ: Quý khách ngồi tại ngồi tại PC ở nhà làm việc thì đó là một Console session. Nếu quý khách chọn tự động đăng nhập, Console Session sẽ được khởi tạo ngay khi quý khách bật máy tính, đó là một Console session ảo.
  • Khi quý khách Remote vào một máy tính sử dụng giao thức RDP thì Console session sẽ bị ngắt và Remote Desktop session sẽ được khởi tạo. Đồng thời các cài đặt cũng như phần mềm đang chạy sẽ chuyển từ Console session sang Remote Desktop session.
  • Khi quý khách thoát ứng dụng Remote desktop, Remote Desktop session sẽ bị ngắt mà không tự động chuyển về Console session. Do đó, các ứng dụng đòi hỏi session để chạy như các ứng dụng macro sẽ không thể chạy tiếp được.

Để giải quyết vấn đề này, chúng ta có 4 cách

  • Sử dụng web remote của LowEndViet panel
  • Sử dụng tài khoản thứ 2 để remote
  • Push session sang console
  • Sử dụng VPS khác để remote

2. Sử dụng Web Remote

Đây được coi là phương pháp đơn giản nhất (hiện chưa thể áp dụng cho VPS IP riêng khu vực DE-Đức và các gói Dedicated server) Sau khi đã thoát remote desktop, quý khách chỉ cần đăng nhập VPS thêm 1 lần nữa qua Web remote sau đó tắt tab trình duyệt Web remote đi là được.

  1. Thoát remote desktop
  2. Đăng nhập VPS qua web remote. Xem hướng dẫn tại Web remote
  3. Tắt tab trình duyệt web remote, vậy là session của VPS đã được duy trì.
    • Chú ý: mỗi khi quý khách đăng nhập lại bằng Remote desktop, quý khách cần phải làm lại các bước trên để kích hoạt lại Console session.

3. Sử dụng tài khoản thứ 2

Theo chúng tôi thì đây là phương pháp tối ưu và chính xác nhất tuy mất nhiều thời gian để cài đặt hơn. Phương pháp thực hiện là ta sẽ tạo 1 user khác và dùng user này để remote lại chính VPS đó. Cách làm như sau:

- Tạo user mới

Ấn phím Windows, gõ “User” vào ô search, chọn “User accounts”. Chọn “Manage another account” → “Add a user account”

Bạn hãy điền thông tin user mới, mật khẩu (chú ý mật khẩu cũng cần phải dài hơn 8 kí tự, chứa cả chữ và số), hint là phần gợi ý sẽ hiện ra nếu bạn quên mật khẩu, sau đó ấn Next và Finish.

Bước 2: Cấp quyền remote cho user mới (user Remote) Tiếp tục ấn phím Windows, gõ “Remote” vào ô tìm kiếm, chọn “Allow remote access to your computer”

Chọn “Select Users” ở hộp thoại tiếp theo.

Tiếp theo, bạn cần điền tên user bạn vừa tạo vào ô “Enter object name to select” (1), tiếp theo ấn “Check Names” (2) và “OK” (3)

Cuối cùng, bạn ấn OK tại hộp thoại cuối để đóng cửa sổ cấp quyền remote.

Bước 3: Remote vào user mới (user Remote) Thoát ứng dụng Remote desktop hiện tại. Bật lại và remote bằng user mới thay vì user “Administrator” mặc định.

Lưu ý là nếu bạn đã chọn lưu thông tin đăng nhập và khi remote sẽ vào thằng user cũ Administrator thì bạn cần chọn “Advance” → tab “General”, tick chọn “Always ask for credentials” và bạn có thể chỉnh sửa username.

Bước 4: Remote vào user gốc (user Administrator) Bạn mở ứng dụng remote desktop của VPS lên, ở ô địa chỉ, bạn gõ vào “localhost”, và tiến hành đăng nhập với username/password của tài khoản gốc (Administrator). Địa chỉ localhost thể hiện bạn đang remote đến chính VPS này.

Giờ đây, bạn có thể tắt RDP ở máy của bạn mà Session Remote desktop của user Administrator vẫn được giữ. Khi bạn cần kết nối lại, hãy sử dụng user mới (Remote) thay vì user cũ (Administrator).

4. Push session sang console

Phương pháp này dễ sử dụng hơn nhưng có nhược điểm là phiên Remote desktop vẫn sẽ bị tạm dừng khi bạn thu nhỏ cửa sổ Remote desktop. Nếu bạn chỉ vào kiểm tra công việc macro và ít phải theo dõi thì phương pháp này khá phù hợp.

Bước 1: Đảm bảo độ phân giải Remote desktop session và Console session là giống nhau

Nếu bạn không chạy macro thì không cần bước này, bạn có thể chuyển sang bước 2.

Console session có độ phân giải mặc định là 1024×768. Để remote với độ phân giải cụ thể, khi mở ứng dụng Remote Desktop, bạn chọn “Show options”

Ở cửa sổ tiếp theo, tab “Display”, bạn kéo thanh trượt cho tới khi độ phân giải bằng 1024×768 (hoặc theo ý bạn, giống với Console session), và ấn Connect.

Bước 2: Tải script để push Remote Desktop session sang Console session.

Download script này tại: http://file.lowendviet.com/Script/KeepRDPSession.bat

Bạn có thể đặt nó lên desktop để tiện sử dụng. Mỗi khi muốn thoát remote desktop, bạn hãy bật nó lên, giao diện script sẽ như sau:

Bạn ấn Enter, Remote desktop session sẽ được đẩy sang Console session sau vài giây và phần mềm của bạn sẽ tiếp tục chạy.

5. Sử dụng VPS khác để remote

Cơ chế của phương pháp này giống với phương pháp đầu tiên, nhưng ở đây chúng ta sẽ sử dụng 1 VPS khác để remote vào VPS cần giữ session. Phương pháp này phù hợp với khách hàng sử dụng nhiều VPS cùng lúc. Chúng tôi khuyên sử dụng ứng dụng Remote desktop connection manager của chính Microsoft để làm việc này. Link tải tại đây:

http://file.lowendviet.com/Software/RemoteDesktopConnectionManager2.7.msi

Chúc quý khách thành công! Nếu có gì thắc mắc, xin liên hệ fanpage: https://fb.com/lowendvietvps. Xin trân trọng cảm ơn!