Tôi đang có một vấn đề kỳ lạ.
Tôi đã đưa ra một Linode mới để hoạt động như một điểm cuối đường hầm.
Tôi đã có thể chuyển tiếp từ xa thành công cổng 1194 nên giờ đây đã kết nối thành công với linode-server@1194 với cổng 1194 của máy và tôi có thể kết nối với VPN của mình bằng cách kết nối với cổng 1194 trên máy chủ linode của mình.
Lệnh dưới đây là những gì tôi đã sử dụng (lệnh hoạt động):
ssh -N -R 1194:localhost:1194 [email protected]
Bây giờ tôi cũng muốn chuyển tiếp 443. Tôi đã thử điều này:
ssh -N -R 443:192.168.1.122:443 [email protected]
Máy chủ cục bộ của tôi đang cố tình nghe trên 192.168.1.122 (không phải localhost).
Tuy nhiên, lệnh trên không mở được cổng 443 trên máy chủ. Tôi nhận được lỗi dưới đây:
Cảnh báo: không thể chuyển tiếp cổng từ xa cho cổng nghe 443
Vì vậy, tôi đã kiểm tra trên máy chủ linode của mình xem có gì đang chạy trên cổng 443 không. Không có gì là:
user@linode-server:~$ sudo netstat -tulpn
Kết nối Internet đang hoạt động (chỉ máy chủ)
Proto Recv-Q Send-Q Địa chỉ cục bộ Địa chỉ nước ngoài Trạng thái PID/Tên chương trình
tcp 0 0 0.0.0.0:1194 0.0.0.0:* NGHE 7438/sshd: người dùng
tcp 0 0 127.0.0.53:53 0.0.0.0:* NGHE 411/systemd-resolve
tcp 0 0 0.0.0.0:22 0.0.0.0:* NGHE 2377/sshd: /usr/sbi
tcp 0 0 0.0.0.0:25 0.0.0.0:* NGHE 1513/chính
tcp6 0 0 :::1194 :::* NGHE 7438/sshd: người dùng
tcp6 0 0 :::22 :::* NGHE 2377/sshd: /usr/sbi
tcp6 0 0 :::25 :::* NGHE 1513/chính
udp 0 0 127.0.0.53:53 0.0.0.0:* 411/systemd-resolve
user@linode-server:~$
Không có tường lửa mềm trên máy chủ. Và Linode cloud firewall mình đã tắt rồi mà vẫn không được.
Tôi hoàn toàn không biết tại sao chuyển tiếp 443 không hoạt động.
Tái bút- xác thực người dùng đang hoạt động tốt trong khi tạo đường hầm.
Tôi không chắc liệu điều này có hữu ích hay không, nhưng sshd_config của tôi trông như thế này:
user@linode-server:~$ cat /etc/ssh/sshd_config | grep -v "^#" | grep -v "^$"
Bao gồm /etc/ssh/sshd_config.d/*.conf
Giấy phépRootĐăng nhập không
Mật khẩu Xác thực không
Giấy phépEmptyMật khẩu không
ChallengeResponseXác thực không
Sử dụngPAM có
GatewayPorts có
X11Chuyển tiếp có
PrintMotd không
Chấp nhậnEnv LANG LC_*
Hệ thống con sftp /usr/lib/openssh/sftp-server
user@linode-server:~$
Và để làm rõ, không có gì trong /etc/ssh/sshd_config.d/
Biểu mẫu ghi nhật ký chi tiết sshd trên máy chủ linode:
...
Ngày 14 tháng 8 09:00:32 kết nối sshd[9499]: Đã hoãn khóa công khai cho pi từ *HIDDEN: Cổng IP công cộng tại nhà của tôi* 49180 ssh2 [preauth]
Ngày 14 tháng 8 09:00:32 kết nối sshd[9499]: Tìm thấy khóa RSA *HIDDEN* được chấp nhận tại /home/pi/.ssh/authorized_keys:1
Ngày 14 tháng 8 09:00:32 kết nối sshd[9499]: Khóa công khai được chấp nhận cho số pi từ *HIDDEN: Cổng IP* công cộng tại nhà của tôi 49180 ssh2: RSA *HIDDEN*
Ngày 14 tháng 8 09:00:32 connect sshd[9499]: pam_unix(sshd:session): phiên mở cho người dùng pi bởi (uid=0)
Ngày 14 tháng 8 09:00:32 kết nối systemd-logind[578]: Phiên mới 157 của người dùng pi.
Ngày 14 tháng 8 09:00:32 connect sshd[9499]: Người dùng con đang sử dụng pid 9579
Ngày 14 tháng 8 09:00:32 kết nối sshd[9579]: bind [0.0.0.0]:443: Quyền bị từ chối
Ngày 14 tháng 8 09:00:32 kết nối sshd[9579]: error: bind [::]:443: Quyền bị từ chối
Ngày 14 tháng 8 09:00:32 kết nối sshd[9579]: lỗi: channel_setup_fwd_listener_tcpip: không thể nghe cổng: 443
...
Tại sao quyền bị từ chối? Lệnh chuyển tiếp từ xa mà tôi đã sử dụng ở trên sử dụng cùng một người dùng (cho cả đường hầm thành công và không thành công).
Chỉ tìm thấy đây rằng có thể là do 443 là một cổng đặc quyền. Bây giờ tôi không muốn sử dụng người dùng root để bật chuyển tiếp từ xa trên 443. Tôi đã khóa máy chủ linode và không thể đăng nhập với quyền root (và tôi không muốn cho phép đăng nhập root). Theo liên kết trên, tôi có thể sử dụng mũ bảo hiểm
, trên máy chủ linode, nhưng tôi phải làm như thế nào vì lệnh mở đường hầm thực sự được chạy từ cục bộ của tôi. Lựa chọn thay thế của tôi là gì? Tôi biết có thể sử dụng cổng cao hơn trên máy chủ linode sẽ hoạt động, nhưng tôi không muốn làm điều đó. Tôi thực sự muốn nó là cổng 443 vì vậy tôi không cần nhớ cổng.