SSH Tünelleri ile Güvenli TCP / IP Bağlantıları
İstemciler ile PostgreSQL sunucusu arasındaki bağlantısı şifrelemek için SSH kullanılabilir.
SSH sunucusunun PostgreSQL sunucusuyla aynı makinede düzgün çalıştığından ve bir kullanıcı olarak ssh
ile oturum açabildiğinizden emin olduktan sonra uzak sunucu ile güvenli tünel kurabilirsiniz. Güvenli tünel, yerel bir bağlantı noktasında dinleme yapar ve tüm trafiği uzak makinedeki bir bağlantı noktasına iletir. Aşağıdaki komut, istemci makineden uzak bilgemyte.com
makinesine güvenli bir tünel oluşturur:
ssh -L 63333:localhost:5432 tubitak@bilgemyte.com
-L
argumanındaki 63333, tünelin local port numarasıdır. Bu, kullanılmayan herhangi bir bağlantı noktası olabilir. Daha sonraki ad veya IP adresi, uzak bağlantı adresidir. Burada varsayılan değer olan localhost’tur. 5432, tünelin uzak ucudur. Bu örnekte, veritabanı sunucusunun kullandığı port numarasıdır. Oluşturduğumuz tüneli kullanarak veritabanı sunucusuna bağlanmak için yerel makine üzerindeki 63333 numaralı porta bağlanırsınız:psql -h localhost -p 63333 postgres
Veritabanı sunucusu, tubitak
kullanıcısını, bilgemyte.com
‘daki localhost bağlama adresine bağlanan bir bilgisayar gibi görünecek ve ilgili bağlantı adresine yapılan bağlantılarda bu kullanıcı için yapılandırılmış kimlik doğrulama prosedürünü kullanacaktır.
Tünel kurulumunun başarılı olduğunu anlamak için ssh
ile tubitak@bilgemyte.com
üzerinden yapacağınız isteğe izin verilmelidir.
Bağlantı noktası yönlendirmeyi şu şekilde de kurabilirdiniz:
ssh -L 63333:bilgemyte.com:5432 tubitak@bilgemyte.com
listen_addresses = 'localhost'
ayarıyla açılmayan bilgemyte.com
bağlama adresine geldiğini görecektir. Bu pek istenilen bir durum değildir.Veritabanı sunucusuna direkt ulaşmanız gereken durumlarda kurulum şu şekilde olabilir:
ssh -L 63333:db.bilgemyte.com:5432 tubitak@shell.bilgemyte.com
shell.bilgemyte.com
‘dan db.bilgemyte.com
‘a olan bağlantı SSH tüneli tarafından şifrelenmez.Kaynak: