Có, bạn phải chỉ định IP và cổng đích khi sử dụng chuyển tiếp cục bộ. Từ man ssh
:
-L [bind_address:]port:host:hostport
Specifies that the given port on the local (client) host is to be
forwarded to the given host and port on the remote side.
Rõ ràng, chỉ có địa chỉ liên kết là tùy chọn.
Không, bạn không thể chỉ định máy chủ đích hoặc cổng khi sử dụng chuyển tiếp động. Trong chuyển tiếp động, SSH hoạt động như một proxy SOCKS. Một lần nữa từ trang chủ (nhấn mạnh của tôi):
-D [bind_address:]port
Specifies a local “dynamic” application-level port forwarding.
This works by allocating a socket to listen to port on the local
side, optionally bound to the specified bind_address. Whenever a
connection is made to this port, the connection is forwarded over
the secure channel, and the application protocol is then used to
determine where to connect to from the remote machine. Currently
the SOCKS4 and SOCKS5 protocols are supported, and ssh will act
as a SOCKS server.
Với -L
, SSH không cố gắng để hiểu lưu lượng. Nó chỉ gửi mọi thứ nó nhận được trên cổng cục bộ đến cổng đích - bạn xác định cổng đích tại thời điểm kết nối được thực hiện. Với -D
, SSH hoạt động như một máy chủ proxy và do đó có thể xử lý các kết nối từ nhiều cổng (ví dụ: trình duyệt được định cấu hình để sử dụng làm proxy SOCKS sau đó có thể truy cập HTTP, HTTPS, FTP, v.v. qua cùng một kết nối). Và giống như với các máy chủ proxy khác, nó sẽ sử dụng lưu lượng để xác định đích.