การทำ tunnel บน linux

เนื่องจากว่าจะทำการส่ง gpg key ไปไว้บน sever แต่ที่ทำงานนั้นไม่เปิด port ให้เลยต้องทำ tunnel โดยเราต้องมี account อยู่ที่ serverไหนก็ได้ที่เขาเปิดให้ ssh ได้ สมมุติผมมี account คือprach@xxx.org มีขั้นตอนทำ tunnel ดังนี้


1. ต้องติดตั้ง dante-client


$sudo apt-get install dante-client

$sudo vim /etc/dante.conf โดย set ให้มีค่าดังนี้



route {

from: 0.0.0.0/0 to: 0.0.0.0/0 via: 127.0.0.1 port = 1080

protocol: tcp udp

proxyprotocol: socks_v4 socks_v5

method: none

}



2. remote เข้าไปใน server ที่เรามี account อยู่ แล้วก็สั่งรันโปรแกรมที่เราต้องการจะ tunnel ในตัวอย่างเป็นการส่ง gpg key ขึ้นไปบน server


$ssh -D localhost:1080 prach@xxx.org

$socksify gpg --keyserver pgp.mit.edu --send-keys 434FC0E1