Firewall Engelini Aşıp Evden Çalışmak İsteyenler İçin: revinetd

0
FZ
Uzunca bir zamandır heterojen ağ ortamlarında, firewall idi, sistem yöneticisinin kaygıları idi, evden ofisteki ağa bağlanma idi, filanca yazılım falanca iş için uygun ama her şey için değil... vs. gibi dertlerle boğuşurken eMBA yazılım ekibimizden Ercümend Oyuktaş'ın keşfettiği minik bir yazılım ile dertlerimize son verdik.

Okuyacağınız kılavuzun işinize yaramasını ümit ederiz. Yazının orjinaline buradan erişebilirsiniz.

Firewall Engelini Aşıp Evden Çalışmak İsteyenler İçin: revinetd

İşyerinizdeki güvenlik duvarı (firewall) yüzünden evden işyerindeki makinanıza bağlanamıyorsanız, heterojen bir bilgisayar ağınız var ise (GNU/Linux, MS Windows, vs.) ve sistem yöneticinizle gereksiz tartışmalara girmek istemiyorsanız bu yazıyı okuyun.

Uzunca bir süreden beri evden işyerindeki makinama bağlanmak istiyor ancak bir türlü bunun için yeterli ve sağlam bir yol bulamıyordum. Tak revinetd ile karşılaşana kadar. Revinetd - reverse port redirector (http://revinetd.sourceforge.net) sistemine rastladıktan sonra bu iş çözüm bekleyen bir problem olmaktan çıktı.

Revinetd: Nasıl Çalışıyor?

Revinetd iki farklı modda çalışıyor, listen-listen ve connect-connect. Evinizdeki Bilgisayar A'da listen-listen d urumunda çalışıyor. İşyerinizdeki Bilgisayar B'de ise connect-connect durumunda çalışıyor. Bilgisayar C ise işyerinde bağlanmak istediğiniz hedef bilgisayar. Bilgisayar C, işyerinizde Bilgisayar B'nin ulaşabildiği herhangi bilgisayar (ya da doğrudan kendisi B=C) olabilir.

Şimdi yukarıdaki plana göre sıra ile bilgisayarlar üzerinde çalıştırmamız gereken komutlara bakalım:

Bilgisayar A - Hizmet Sunucu:

revinetd -s -l 3389 -L 100

şu anda revinetd hizmet sunucu (server) durumunda çalışıyor. 3389 portundan yerel bir istemci (client) programının bağlanmasını, 100 portunda Ajan bilgisayarın bağlanmasını bekliyor.

Bilgisayar B - Ajan

revinetd -r -c [Bilgisayar A IP adresi]:100 -t [Bilgisayar C IP adresi]:3389

bu bilgisayarda ise revinetd ajan durumunda çalışıyor. Bilgisayar A'nın 100 numaralı portuna bağlantı kuruyor. Bu bağlantı, Sunucunun İstemci / Hedef ikili bağlantısı kurmak için yeni veri bağlantısı isteyeceği iletişim kanalı olarak kullanılıyor. Sunucu 100 numaralı porta gelen ilk bağlatının iletişim kanalı ve ondan sonraki tüm bağlantıların veri bağlantısı olduğunu biliyor. Güvenlik duvarından (firewall) ilave port açılması ihtiacını en aza indirmek için böyle yapılmış.

Şema 1


Bilgisayar A'da istemci programı 127.0.0.1:3389 portuna bağlanıyor. Hizmet sunucusu bağlantıyı algılıyor ve iletişim kanalı üzerinden ajan bilgisayardan yeni veri bağlantısı talebinde bulunuyor.

Şema 2


Ajan Bilgisayar B mesajı alıyor ve Hizmet Sunucu Bilgisayar A'ya bağlanıyor. Bilgisayar A bağlantı sağlandığında Hedef Bilgisayar C'ye bağlantı kurarak proxy-port ikilisi veri rölesini başlatıyor.

Şema 3


Böylece Bilgisayar A'da çalışan istemci programınız 127.0.0.1:3389 portuna bağlı olmasına karşın Bilgisayar-C:3389 bağlıymış gibi çalışacak.

Revinetd İçin Hazırlık

  • 1. Adım revinetd edinmek. http://revinetd.sourceforge.net adresinden revinetd yazılımını indirebilirsiniz.
  • 2. Adım derleme.
  • ./configure
    make
    make install


    Not: MS Windows kullancıları Cygwin ile derleyebilirler. (Ben Emre "FZ" Sevinç'in bilgisayarındaki Cygwin'i kullanarak makinasında derledigi revinetd.exe ile sorunsuz çalışıyorum. Emre'ye teşekkürler :)

  • 3. Adım (ADSL modem) kullanıyorsanız


  • Evdeki makinanızda revinetd uygulamasının dinleyeceği portu ayarlamak. Dilediğiniz bir boş porttan dinleyebilirsiniz, tabii işyerinden çıkabildiginiz portları da göz önünde bulundurun. Örnegin işyerinizdeki güvenlik uygulamaları nedeniyle 1024 ve üzeri portlara çıkışınız yoksa tabii ki evdeki makinenizin de 1024 altında kalan bir porttan dinliyor olması uygun olacaktır. Biz, örnegimizde revinetd'yi 100 numaları porttan dinlemek üzere ayarlayacagiz. ADSL modeminizin konfigürasyon menüsünden VIRTUAL SERVER başlığı altında revinetd uygulamasının dinleyeceği port için bir kayıt yaratmalısınız.

    public port start : 100
    public port end : 100
    private port : 100
    private ip : makinenizin local IP adresi

    Konfigürasyon işlemini tamamladığınızda ayarlarınızı kaydetmeyi ve modeminizi yeniden başlatmayı unutmayın. Modeminizinin konfigürasyon menüsüne nasıl gireceğinizi bilmiyor veya konfigürasyon menüsünde VIRTUAL SERVER başlığına rastlayamadıysanız bu işlemler ile ilgili ilk önce modeminizin kullanım kitapçığına bakmanız gerek. Boylece revinetd nin kullanimi icin artık hazırız.
Yukarıdaki hazırlıkları yaptıysanız bu kılavuzun ilk bölümündeki komutları kullanarak önce ofisinizdeki bilgisayarı ayarlayabilir ve sonra evinize gittiğinizde gerekli, işlemlere devam edebilirsiniz.

Buradaki örnek olabildiğince genel (generic) tutulmuştur, ofisinizdeki bir web server, "remote desktop", vs. gibi bir uygulamanın hizmet verdiği portu belirledikten sonra evinizdeki bilgisayarınızdan ulaşmanız mümkün olabilecektir. Programın derlenmiş halini ve MS Windows üzerinde çalışması için gerekli olan cygwin.dll dosyasını buradan edinebilirsiniz.

Ercümend Oyuktaş
2004-01-11
e-posta: mathware at yahoo nokta com

Görüşler

0
conan
Ercu rules hehe ;)
0
ercumend
Il y a deux manières de construire une conception de logiciel ; l'un doit la rendre si simple qu'il n'y a évidemment aucune insuffisance, et l'autre manière est de la faire ainsi compliquée qu'il n'y a aucune insuffisance évidente. La première méthode est plus difficile bien.
0
ttk
emeği geçenlerin eline sağlık, gayet faydalı bir döküman ve uygulama.
0
FZ
Pratik olarak işinize yararsa ne mutlu yazana ve yayınlayana ;-)
0
ttk
Firewall'ı aşabilmeyi sağlaması faydasının yanında, standart belli portlardan çıkış verilmek zorunda kalınan hizmetlerin ilk anda bu portları tarayıp geçenler tarafından bulunmasını da engelleyebilme gibi bir faydası da var programın.
Sistemimizin verdiği hizmetlerin açık portlar yoluyla kolayca teşhis edilip saldırıya hedef olma ihtimalini azaltması çok faydalı.
Terminal servisin portunu nasıl gizlesem diye düşünüyordum, epey işime yarayacak bu bilgiler.
Teşekkür ederim :)
0
Doggie
süper haber, hele amaç çalışmayıp şirkette birşeyleri karıştırmak ise. İleri yoldaş !
0
FZ
Bence de süper bir haber/yazı ancak amaç evden ofise bağlanıp herhangi bir durum olduğunda uzaktan müdahale edebilmek ve teknik problemleri çözebilmek. İstanbul şehri, İstanbul trafiği, yollar, yolda kaybedilen vakit vs. düşünelecek olursa, uzaktan ofiste bilgisayar ağına bağlanıp geliştirme yapmanın ya da teknik bir programlama problemini çözmenin değeri daha iyi anlaşılır. Dediğim gibi, tamamen teknik bir mesele.
0
Doggie
süper haber, hele amaç çalışmayıp şirkette birşeyleri karıştırmak ise. İleri yoldaş !
0
ttk
Yazılarınıza baktım da, nikinize gayet uygun düşüyor yazılarınız.
0
FZ
Bu yazıyı sistem yöneticinize okutmayın! ;-)

Görüş belirtmek için giriş yapın...

İlgili Yazılar

21 Günde Değil 10 Yılda Programlama Öğrenin

FZ

Herhangi bir kitapçıya gittiğinizde Teach Yourself Java in 7 Days (7 Günde Java Öğrenin) benzeri, size birkaç günde veya birkaç saatte Visual Basic, Windows, Internet (vs.) öğretmeyi vadeden kitaplarla karşılaşırsınız...

... Birkaç günde, Beethoven, kuantum fiziği ya da köpek eğitimi öğreten kitaplar yok. Bu sonuçlara bakılırsa, ya insanlar bilgisayar hakkında yeni şeyler öğrenmek için çok hevesli ve aceleci ya da bu iş bir şekilde inanılmaz derecede kolay.

... Araştırmacıların da (Hayes, Bloom) ortaya koyduğu üzere, satranç oynamaktan beste yapmaya, resimden piyanoya, yüzmeden tenise ya da nöropiskoloji ve topoloji alanlarında araştırma yapmaya kadar bir çok alanda uzman olmak, on yıl civarında bir zaman alıyor ve bunun bir kısayolu var gibi gözükmüyor.

Peter Norvig'in "Teach Yourself Programming in Ten Years" başlıklı makalesinin çevirisini On Yılda Programlama Öğrenin adresinde okuyabilirsiniz.

Algoritmalar

Tarık

Prof. Dr. Vasif Vagifoğlu Nabiyev tarafından algoritma konusunda hazırlanmış ilk Türkçe başvuru kaynağı. Genel ve güncel birçok algoritmanın olması gerektiği gibi cebirsel analizleriyle ele alındığı derli toplu ilk Türkçe kitap.

Kitap Eleştirisi: Adım Adım LaTeX

FZ

Biz bilgisayarcılar için genellikle pek kaynak sıkıntısı yoktur, hemen hemen her türlü konuda diğer bilgisayarcılardan, USENET'ten, Google'dan, vs. kolayca bilgi edinebilir ve bunları pratik olarak uygulayabiliriz. Bununla birlikte bir konuya yeni başlayan birine derli toplu, sistematik olarak konuyu anlatan bir kitabın değeri ve pedagojik önemi tartışılmaz.

Adım Adım LATEX isimli kitap da yukarıdaki sebeplerden ötürü LaTeX konusunda önemli bir boşluğu dolduran belki de ilk ve tek Türkçe kaynak. Prof. Dr. Abdugafur Rahimov ve Orhan Kesemen tarafından yazılmış ve 2004 yılında kitabevlerinde satışa sunulmuş Adım Adım LaTeX kitabı, LaTeX isimli kaliteli belge oluşturma sistemine dair gerekli hemen hemen tüm bilgileri içeriyor. Kitabın ve LaTeX'in sadece matematikçilere ya da bilgisayarcılara hitap ettiğini düşünenler varsa, bu önyargılarını şimdiden silmelerinde fayda var. Psikolojiden, felsefeye, işletmeden hukuğa kadar, herhangi bir konuda ödev yazan, makale hazırlaması gereken ya da profesyonel görünümlü bitirme ödevi, yüksek lisans tezi, doktora tezi, kitap vs. yazmak isteyenlere bu kitabı rahatlıkla önerebilirim başucu kaynağı olarak.

Emacs Bilgileri

malkocoglu

Emacs hakkında bazı yararlı olacağını düşündüğümüz bilgileri sunuyoruz.

Emacs Dış Programları Nasıl İşletir?

Ayrica, son hafta çıkan diğer yazılar:

IBM Özgür Yazılım Dergisi 3. Sayısı Çıktı

FZ

IBM Türk tarafından hazırlanan, Türkiye'nin ilk Özgür Yazılım dergisi yayın hayatına yeni ismiyle devam ediyor. IBM Özgür Yazılım'ın 3. sayısı daha önce talep eden üyelerimize ulaştırılmak üzere yola çıktı. Bir sonraki sayının adresinize gönderilmesini istiyorsanız üyelik bilgilerinizdeki adres bilgilerinizi güncelleyip ve "IBM Özgür Yazılım Dergisinin Adresime Gönderilmesini İstiyorum" seçeneğini işaretlemeniz gerekiyor.