Chuyển hướng cổng bằng SSH

Giả sử có Server địa chỉ host (ip hoặc domain)myserver, login được bằng SSH với user là user. Nghĩa là kết nối được bằng:

ssh user@myserver

Giờ nếu muốn chuyển hướng cổng máy local là portlocal sang portremote, có nghĩa là nếu truy cập localhost:portlocal thì thực tế là truy cập myserver:portremote thì gõ lệnh SSH sau:

ssh  -L 0.0.0.0:portlocal:127.0.0.1:portremote user@remoteserver

Ví dụ, chuyển cổng 1234 của localhost, thành cổng 80 của server

ssh  -L 0.0.0.0:1234:127.0.0.1:80 user@remoteserver

Có nghĩa là truy cập http://localhost:1234 thực ra là truy cập http://remoteserver


Chuyển cổng 3306 (MySQL Server) của local thành 3306 của server

ssh  -L 0.0.0.0:3306:127.0.0.1:3306 user@remoteserver

Có nghĩa là kết nối đến MySQl với host là localhost, thì có nghĩa là kết nối đến MySQL ở Server remoteserver

Đảo cổng với SSH

Tình huống này là bạn muốn cổng trên Server sẽ chuyển về cổng ở Local (máy local có public ip là public-ip).

ssh -R serverport:localhost:localport root@myserver

Có nghĩa là truy cập địa chỉ myserver:serverport có nghĩa là truy cập public-ip:localport

ssh -R 123456:localhost:80 root@myserver

Có nghĩa truy cập http://myserver:123456 có nghĩa là truy cập http://public-ip:80

Chạy lệnh trên máy Remote

Khi thực hiện kết nối SSH, nếu kết nối thành công với Remote, thì nó sẽ kết nối terminal - shell của máy Remote, từ đó ta gõ và thi hành các lệnh trên máy Remote.

Tuy nhiên, nếu muốn - sau khi kết nối - thi hành ngay một lệnh và ngắt kết nối ngay. Thì gõ lệnh ssh như sau:

ssh user@myserver "lệnh-cần-chạy ... "

Ví dụ - chạy ngay lệnh cd /var và lệnh ls

ssh root@myserver "cd /var && ls"

Mount (gắn) thư mục máy Remote vào Local với SSHFS

cài đặt SSHFS trên Ubuntu

apt install sshfs

cài đặt SSHFS trên CentOS

yum install fuse-sshfs

cài đặt SSHFS trên macOS xem sử dụng Fuse macOS

cài đặt SSHFS trên Windows sshfs-win

Gắn thư mục /home/data/ trên server vào /mydata/ trên local

sshfs user@remoteserver:/home/data/ /mydata/

Tạo Socks để chuyển traffic thực hiện từ Server

Bạn có thể tạo SOCKS với SSH, ví dụ tạo lắng nghe trên cổng 19999 (TPC), ở máy local - để chuyển traffic qua máy Server

ssh -D 0.0.0.0:19999 root@myserver

Giờ thì tùy loại máy, mà bạn thiết lập traffic mạng từ máy bạn, sẽ thực hiện qua server (Fake IP).

Trên macOS

Trên Windows gõ vào Start Menu Internet Properties và làm theo từng bước

Giờ việc truy cập Internet của bạn, có địa chỉ public IP là địa chỉ IP của Server

Gõ vào Google Search: what is my ip để nhìn thấy ngay IP hiện tại.

Đăng ký theo dõi ủng hộ kênh