Hiểu đường hầm SSH


15

Tôi có máy chủ linux (Ubuntu) mà tôi chỉ có quyền truy cập root thông qua ssh (cổng 22). Trên máy chủ đó có cơ sở dữ liệu MySQL lắng nghe trên cổng 3306. Có thể sử dụng putty (trên máy của tôi) và tạo đường hầm (trên máy linux) để tạo đường hầm từ một cổng cục bộ trên máy của tôi (giả sử 4000), máy chủ linux trên cổng 22 và sau đó từ máy chủ đến chính nó trên cổng 3306?

Câu trả lời:


20

Tôi đã vẽ một số bản phác thảo

Máy, nơi lệnh ssh đường hầm được gõ (hoặc trong trường hợp của bạn: Putty với đường hầm được bắt đầu) được gọi là »máy chủ của bạn« .

đường hầm ssh bắt đầu từ địa phương


đường hầm ssh bắt đầu từ xa

Giới thiệu

  1. địa phương: -L Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side.

    ssh -L sourcePort:forwardToHost:onPort connectToHostcó nghĩa là: kết nối với ssh đến connectToHostvà chuyển tiếp tất cả các nỗ lực kết nối đến cổng cục bộ trên máy được gọi , có thể đạt được từ máy.sourcePortonPortforwardToHostconnectToHost

  2. Xa xôi: -R Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side.

    ssh -R sourcePort:forwardToHost:onPort connectToHostcó nghĩa là: kết nối với ssh đến connectToHostvà chuyển tiếp tất cả các nỗ lực kết nối đến điều khiển từ xa sourcePort đến cổng onPorttrên máy được gọi forwardToHost, có thể đạt được từ máy cục bộ của bạn.

Ví dụ của bạn

Hình ảnh đầu tiên đại diện cho tình huống của bạn. Hộp màu xanh được gọi your hostlà máy Windows của bạn mà bạn khởi động Putty đến máy chủ Ubuntu của mình, được gọi remotehosttrong hình ảnh của tôi. Kết nối vào cổng màu xanh lá cây (trong số cổng trường hợp của bạn 4000) được chuyển tiếp vào cổng MySQL hồng 3306của localhostcác máy chủ Ubuntu của bạn (ví dụ máy chủ Ubuntu chính nó).

Để thiết lập nó với Putty

Bắt đầu Putty và nhập các cài đặt kết nối thông thường của bạn (Tên máy chủ hoặc địa chỉ IP) Trong cây ở phía bên trái, điều hướng đến

Kết nối → SSH → Đường hầm

và tạo một đường hầm cục bộ mới với cổng nguồn 4000(123 trong ảnh) và đích localhost:3306(localhost: 456 trong ảnh).

Đừng quên nhấp vào Thêm .

Sau đó điều hướng quay lại phiên và nhấp vào Lưu để giữ cài đặt của bạn cho lần tiếp theo. Bây giờ bạn có thể sử dụng kết nối đã lưu để đăng nhập vào máy chủ của mình và sau khi đăng nhập thành công, mỗi khi bạn kết nối với cổng 4000 trên máy chủ của mình, bạn sẽ thực sự kết nối với cổng 3306 trên máy chủ Ubuntu.

tạo đường hầm phía trước với putty


Rất tốt, cảm ơn cho minh họa. Tôi đánh giá cao rằng bạn đã thêm các đường hầm loại "từ xa", mà tôi không bao gồm trong anwers của tôi.
Guss

1
Câu trả lời này thật tuyệt vời
Mauricio Pasquier Juan

2
Câu trả lời tuyệt vời và rất minh họa +1
rkachach

1
Làm thế nào điều này có rất ít phiếu bầu là một sự xấu hổ.
Ryan Fisher

1
Tôi thích bản phác thảo này. Hình ảnh đáng giá ngàn lời nói.
qartal

16

Câu trả lời đơn giản là có, nhưng xin lưu ý rằng đường hầm thực sự được bắt đầu trên máy tính của bạn. Cách thức hoạt động là bạn tạo kết nối SSH đến máy chủ (bảo mật) và sau đó hướng dẫn SSH nghe một cổng bên cạnh bạn và chuyển tiếp bất kỳ kết nối nào đến - đến một cổng cụ thể trên một địa chỉ máy chủ cụ thể trên phía máy chủ. Mục tiêu của đường hầm không cần phải là cùng một máy chủ - đó có thể là bất kỳ địa chỉ hợp lệ nào khác, trong trường hợp đó không phải là máy chủ chạy chính máy chủ SSH - sẽ thấy kết nối đến như thể nó đến từ máy chủ SSH thay vì từ khách hàng của bạn.

Để thiết lập nó, hãy mở hộp thoại cấu hình Putty, chọn cài đặt kết nối bạn thường sử dụng để truy cập máy chủ của mình và nhấp vào "tải" (chứ không phải "mở"). Sau đó, trong cây ở phía bên trái, điều hướng đến Connection-> SSH-> Đường hầm và tạo một đường hầm "cục bộ" mới với cổng nguồn 4000 và đích "localhost: 3306" (vì địa chỉ đích được giải quyết trên máy chủ, từ quan điểm của máy chủ, cổng MySQL nằm trên localhost). Sau đó điều hướng quay lại "phiên" và nhấp vào "Lưu" để giữ cài đặt của bạn cho lần tiếp theo. Bây giờ bạn có thể sử dụng kết nối đã lưu để đăng nhập vào máy chủ của mình và sau khi đăng nhập thành công, mỗi khi bạn kết nối với cổng 4000 trên máy tính, bạn sẽ thực sự kết nối với cổng 3306 trên máy chủ.

Nếu bạn nghiêm túc vào các đường hầm và chạy máy khách MS-Windows, thì tôi khuyên bạn nên xem Putty Tunnel Manager sử dụng Putty để thiết lập và chạy các đường hầm một cách dễ dàng mà không cần phải có bàn điều khiển putty mở.

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.