Sunucuya yetkili SSH erişimiyle OpenSSH bilgisayarınızda SOCKS dinleyicisi oluşturabilir. SSH bağlantısı yönlendirilen trafiği taşır, uzak sunucu hedef bağlantısını kurar.

Yalnızca loopback dinleyicisi

ssh -N -T -o ControlPath=none -o ForkAfterAuthentication=no -o ExitOnForwardFailure=yes -D 127.0.0.1:1080 [email protected]

Hesabı ve host adını değiştirin. SSH sunucusu yönlendirmeye izin vermelidir; yönetici yönlendirmeyi ve hedefleri hesap girişinden bağımsız sınırlayabilir.

-D dinamik yönlendirme oluşturur; açık loopback adresi dinleyiciyi bu makineyle sınırlar. -N uzak komutu, -T sözde terminali atlar. ControlPath=none mevcut paylaşım master’ını kullanmayı önler, ForkAfterAuthentication=no bu çağrıyı ön planda tutar.

Proxy kullanırken süreç çalışsın. Port 1080 doluysa başka boş yüksek port seçip istemciyi güncelleyin. ExitOnForwardFailure=yes dinleyici oluşturulamazsa SSH’nin çıkmasını sağlar.

SOCKS uç noktasını kullanmak

curl --proxy socks5h://127.0.0.1:1080 --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/

Bu istek hedef adı işlemesini SOCKS5 üzerinden devreder. Diğer uygulamalara kendi SOCKS ayarları gerekir; HTTP proxy alanı bu dinleyiciyle SOCKS konuşamaz.

Portun sahibi olan süreci kontrol etmek için:

ss -ltnp 'sport = :1080'

Amaçlanan SSH süreci bir loopback dinleyicisine sahip olmalıdır. Üzerinden istek göndermek uzak sunucunun da hedefe erişip erişemediğini sınar. Gözlenen çıkışı incelemeniz gerektiğinde kontrolünüzdeki bir hedefi kullanın.

Oturum ömrü

Ctrl-C SSH sürecini, dinleyiciyi ve yönlendirilen bağlantıları kapatır. SSH bağlantısının kopması da proxyyi kullanılamaz yapar.

ExitOnForwardFailure kurulum aşamasını kontrol eder. Sonraki her hedef bağlantısı hatasında SSH’yi sonlandırmaz; bu yüzden oturumu, yerel portu ve hedef isteğini ayrı teşhis edin.

İlgili makaleler