Vì vậy, nếu tôi hiểu câu hỏi của bạn, bạn có:
- 2 PC trên mạng nội bộ.
- Bạn không có ảnh hưởng đến các bộ định tuyến trên một trong hai mạng.
Và bạn muốn:
- Thiết lập một máy chủ công cộng ( PS ) lưu trữ một dịch vụ SSH (tôi giả sử cảng 22 ).
- Kết nối PC1 và PC2 đến PS (Lưu lượng đi, không có cấu hình bộ định tuyến).
- Kết nối phiên VNC từ PC2 (Windows) để PC1 (Ubuntu) trên cổng 5900 .
Bạn có thể đạt được điều đó bằng cách tạo một đường hầm SSH, thực hiện chuyển tiếp từ xa từ PC1 và chuyển tiếp cục bộ từ PC2.
Đây sẽ là kiến trúc:
Vì vậy, để làm việc này, từ Ubuntu PC, PC1, bạn cần kết nối với PS bằng cách sử dụng:
ssh <ps-user>@<ps-address> -R 5901:localhost:5900
Tại thời điểm này nếu bạn đăng nhập vào PC1, bạn có thể chạy netstat -latn | grep 5901
và bạn sẽ thấy nó lắng nghe. Điều này có nghĩa là một nửa của quá trình đã sẵn sàng.
Bây giờ kết nối máy khách. Từ PC2, nếu đó cũng là một hộp linux, bạn có thể sử dụng
ssh <ps-user>@<ps-address> -L 5902:localhost:5901
nếu là Windows, bạn có thể sử dụng PuTTY, bằng cách đặt phần chuyển tiếp cổng bên dưới Connection
/ SSH
/ Tunnels
và thêm một cổng cục bộ với cổng nguồn 5902
và đích đến localhost:5901
. Khi nhấp vào thêm, bạn sẽ thấy trong danh sách các cổng được chuyển tiếp giống như L5902 localhost:5901
Bây giờ bạn có hai đường hầm được kết nối với một máy chủ công cộng. Nếu bạn chạy trình xem VNC từ PC2 và trỏ đến localhost: 5902, bạn nên kết nối với dịch vụ VNC nghe trên cổng 5900 trên PC1.
Hy vọng nó giúp.
<port>
vv và báo cáo về hệ điều hành và kiến trúc mạng cục bộ của bạn?