X11 có thể được chuyển tiếp qua đường hầm SSH không


7

Tôi giao tiếp với máy chủ thông qua một đường hầm ssh, được cấu hình qua Putty.

Gần đây, tôi đang cố gắng chuyển tiếp X11 thông qua nó, nhưng nó không hoạt động.

Có ai làm việc theo cách này không?

Tìm kiếm bằng google, nhưng không tìm thấy gì.


2
Với OpenSSH thông thường, bạn sẽ có thể chuyển -Xcờ và X về phía trước, nhưng tôi không chắc điều đó sẽ được thực hiện như thế nào qua cổng TCP.
Naftuli Kay

3
Nếu bạn đang sử dụng PuTTY, điều đó có nghĩa là máy chủ mà bạn đang kết nối với máy chủ đang chạy MS Windows? Nếu vậy, thì bạn sẽ cần một máy chủ X chạy trên Windows được cấu hình để chấp nhận kết nối TCP.
Jonathan Ben-Avraham

2
Bạn đã viết 'nó không hoạt động'. Trong các câu hỏi trong tương lai, vui lòng giải thích cách thức hoạt động của nó: bạn đã thử gì, thông báo lỗi nào bạn thấy, thông báo nhật ký liên quan nào và hành vi bạn đã thấy.
dcorking

Nếu bạn đang sử dụng Debian, hãy xem: superuser.com/a/862647/391087
Ismael Miguel

Có, nhưng bạn sẽ cần một máy chủ X trên máy cục bộ của bạn (Tôi có VcXsrv ). Hãy nhớ rằng giao thức X11 cực kỳ nhạy cảm vì nó có xu hướng cần nhiều cuộc gọi rút thăm đồng bộ, yêu cầu các chuyến đi khứ hồi toàn mạng nối tiếp nhau, do đó, nó không hiệu quả qua Internet. Bây giờ tôi chủ yếu sử dụng VNC qua SSH.
bwDraco

Câu trả lời:


14

Vâng, điều này có thể theo một số cách khác nhau nhưng bạn sẽ cần một máy chủ cửa sổ X cho Windows. Một số tùy chọn của máy chủ X windows là XManager, XMing và MobaXterm. Khi bạn có máy chủ X chạy trên Windows, bạn có thể sử dụng PuTTY để kết nối với máy chủ của mình sau khi bạn đã đặt tham số cấu hình:

Connection/SSH/X11
  Enable X11 forwarding
  X display location: localhost:10.0

Trường hợp 10.0 phụ thuộc vào những gì máy chủ X Window đang nghe.

Khi bạn định cấu hình máy chủ X Window và PuTTY và đăng nhập vào máy chủ của mình, bạn có thể xác minh DISPLAYbiến nếu a DISPLAYđược đặt:

$ echo $DISPLAY
localhost:10.0

Sau đó thử một cái gì đó như xclockđể xem nếu chuyển tiếp X11 hoạt động:

# xclock &

Một cách khác để sử dụng X11 ngoài việc sshđặt DISPLAYbiến thủ công để trỏ đến địa chỉ IP như:

# export DISPLAY=192.168.0.1:0

Và xem nếu nó hoạt động:

# xclock &

Bằng cách này, các ứng dụng X được (tái) hướng đến đầu ra cho máy chủ X Window từ xa.

Lưu ý : Hãy nhớ rằng giao thức X11 không được thiết kế để hoạt động trên các kết nối mạng chậm (WAN). Ứng dụng X có thể rất chậm khi sử dụng trên các kết nối chậm. Cân nhắc sử dụng công tắc -C(nén) sshđể sử dụng nén qua sshphiên để tăng tốc độ lên một chút.


Vấn đề từ ngữ nhỏ ở đó: Những gì anh ta cần là một máy chủ X Window . Một trình quản lý cửa sổ thường sẽ được bao gồm trong một cài đặt như vậy, nhưng không cần thiết 100% và thậm chí có thể chạy trên máy từ xa.
rackandboneman

Tôi đã có thể thực hiện việc này mà không cần bất kỳ cấu hình nào trên SSH. Xming đã có PuTTY, vì vậy, đây là một cấu hình. Ngoài ra, điều này có thể yêu cầu bạn đăng nhập mỗi khi phiên của bạn kết thúc. Bạn có thể xem superuser.com/a/862647/391087 hoặc askubfox.com/q/426831/377328 để giải quyết vấn đề đó, nếu đó là vấn đề cho bạn.
Ismael Miguel

3

Xin chào nếu bạn muốn sử dụng putty như sử dụng Openssh với -x bạn phải cài đặt XMING trên máy tính windows của mình. nó trở nên giống như một loại máy chủ nào đó sau đó bạn phải cấu hình bạn putty để chuyển tiếp X11 của bạn kết nối ssh qua máy chủ này

Tải xuống Xming

Bạn có thể sử dụng hướng dẫn này


XMING là một giải pháp tốt, nhưng không phải là giải pháp duy nhất.
rackandboneman

1

Một giải pháp khác là cài đặt Cygwin trên máy Windows của bạn. Nó có cả sshmáy khách và X11máy chủ (hãy chắc chắn cài đặt các gói tương ứng).

Hãy nhớ rằng nhiều X11cài đặt cấm chuyển tiếp X không đáng tin cậy. Có lẽ cách đơn giản nhất là sử dụng -Ytùy chọn trongssh

ssh -Y user@server
xclock

Giống như các thuật ngữ "máy khách" và "máy chủ", hãy cẩn thận với các thuật ngữ "đáng tin cậy" và "không đáng tin cậy". Kết nối "đáng tin cậy" là một trong đó một số điều khiển bảo mật thông thường bị vô hiệu hóa - tức là bạn tin tưởng vào hệ thống mà bạn đang kết nối để không làm điều xấu cho bạn.
symcbean
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.