HTTP Proxy veya internet kısıtlamaları nasıl aşılabilir?

Diyelim ki, bir yerde çalışıyorsunuz ve çalıştığınız ofiste internete erişmek için size verilen http proxy ayarını girmek durumunda kalıyorsunuz. Ve bulunduğunuz yerin sistem yöneticileri pop3, smtp portlarına erişimi de kapattığı için Outlook kullanamıyorsunuz. Proxy girmediğiniz zaman hiçbir siteye erişemiyor, IP lerini pingleyemiyor ya da telnet ile 80 ve 443 portlarını kontrol ettiğinizde bağlanamadığınızı görüyorsunuz. Ve “sadece outlook ile e-postalarımı kontrol etmek, e-posta gönderebilmek istiyorum” şeklindeki çok masum bir isteğinizi dile getirdiğinizde sistem yöneticilerinden aldığınız cevap “e-postalarınızı web üzerinden kontrol edebilirsiniz” gibi eskilerin “malumu ilan etmek” dedikleri türden anlamsız yanıtlar alıyorsunuz. Bu durumda ne yapmalısınız ki Outlook’u tıpkı o eski güzel günlerde olduğu gibi :) kullanabilesiniz?

Yukarıdaki paragrafta anlatılanlar gerçek bir hikayeden alınmıştır. Soruyu soran kişi yukarıda bahsettiğim durumu yaşayan bir arkadaşım, bu yardım çağrısının muhatabı da bendim:) Kendisine öncelikle önereceğim çözümü kısaltmak için Outlook yerine Thunderbird kullanmasını önerdim. Çünkü Outlook bildiğim kadarı ile SOCKS proxy desteklemiyor. Fakat Outlook ile sadece e-postalarına değil de exchange server üzerinden güncellediği takvimine de ulaşmak ve exchange serverın diğer bazı özelliklerini de kullanmak istediği için çok ısrar edemedim.

Bu sorunu aşmak için en belirgin yöntemlerden biri putty ile size verilen proxy ayarları ile girerek 443 ya da 80 portundan çalışan bir SSH sunucusuna kullandığınızın makinanın bir portunu bağlamak ve bu sayede bir SOCKS proxy oluşturabilmektir. Yani kullandığımız proxy’nin engelleyemeyeceği bir port üzerinden (443 - https gibi) bizi herhangi bir şekilde kısıtlamadan internete açacak bir SSH sunucusuna bağlanacağız. Ve kullanacağımız uygulamaları proxy içinden güvenli bir şekilde geçecek bu “tünel”e (SOCKS proxy) bağlayarak proxy’nin kurallarını aşmış olacağız.

Fakat arkadaşın içinde bulunduğu durumda aşılması gereken iki sorun daha mevcut idi. Birincisi, Outlook’un hazırlayacağımız SOCKS proxyi kullanamaması; ikincisi ise, arkadaşın kullandığı proxy’nin Microsoft ISA Server olması idi. Kullanılan proxy uygulaması kimlik doğrulaması için NTLM protokolünü kullanıyordu. Başka bir deyişle, kullanıcı proxy ayarlarını girerken içinde bulunduğu windows network domain’i de kimlik doğrulama açısından önemli bir rol oynuyordu.

İlk problemi gidermek için “Sockscap” isimli ücretsiz bir programı kullandık. Böylece herhangi bir “exe” nin belirteceğimiz SOCKS proxy ayarları ile internete erişimini sağladık.

İkinci problemi gidermek için ise, “NTLM Authorization Proxy Server” isimli açık kaynak kodlu python’la hazırlanmış programı kullandık.

Şimdi sıra ile yukarıda belirttiğim koşullar altındaki bir makinadan nasıl MS Outlook’u hiçbir kısıtlama olmaksızın çalıştırabileceğimizi aktaracağım. Eğer Outlook yerine Thunderbird çalıştırıyor olsa idik Sockscap programını kullanmamıza gerek kalmayacaktı. Ve eğer kullanılan http proxy NTLM ile kimlik doğrulama yapmasa idi python kurulumu ve NTLM Authorization Proxy Server ile uğraşmayacaktık.

Kullandığımız proxy’nin bağlandığımız portu 8080 ise ve bilgisayarımızın bulunduğu networkte bir windows domain’e bağlı isek muhtemelen proxy NTLM protokolü kullanıyor demektir. Ya da putty’e proxy ayarlarınızı girdiğinizde “Error 407 Proxy Authentication Required” hatası alıyorsak muhtemelen NTLM kullanılıyor demektir.

Şimdi öncelikle örneğimizde kullanacağımız parametreleri belirleyerek sıra ile yapılması gereken aşamalara geçelim.

Kullandığımız proxy server ayarları ve diğer parametreler:

Kullandığımız proxy ayarları aşağıdaki şekilde olsun:

Proxy IP : 192.168.1.10

Proxy Port : 8080

Proxy Kullanıcı Adı : user1

Proxy Şifre : sifre1

Bağlı olduğumuz windows domaini : domain1.ofis

Şimdi de makinamızda kullanacağımız 2 adet port belirleyelim. Port numaraları normalde bilgisayarımızda kullanılan herhangi bir port olmasın diye ben 9000 ve 9999 portlarını örnek olarak kullanacağım. 9000 portunu normalde internete çıkmak için kullandığımız proxy’e kimlik doğrulamasını otomatik yaparak girebilmek için NTLM Authorization Proxy Server kurulumunda kullanacağım. 9999 portunu ise SOCKS proxy portu olarak kullanacağım. Eğer bu portlar bilgisayarınızda kullanımda ise (command prompt açarak “netstat -na” komutu ile kullanımdaki portları görebilirsiniz) daha yüksek numaralı iki portu da seçebilirsiniz.

Dışarda bize internete girmemizi sağlayacak ssh sunucusu olan ve ssh a bağlanmak için 443 portunu kullanabildiğimiz bir Linux makina ya da virtual host (VPS) için kullanacağımız örnek bilgiler aşağıdaki gibi olsun.

Makina IP si : 208.77.188.166 (example.com)

SSH portu : 443

SSH kullanıcı adı : sshuser

SSH password : sshpass

NTLM Authorization Proxy Server Kurulumu:

NTLM APS bir python uygulaması olduğu için öncelikle python yorumlayıcısı (interpreter) kurmamız gerekiyor. Bu nedenle aşağıdaki adresten işletim sistemimize uygun bir installer indirip kuruyoruz. Kurulum esnasında kurulumu yaptığımız yerin adresini unutmayalım. (Ben C:Python25 altına kurduğunuzu varsayacağım)
http://www.python.org/download/

Command promptu açarak kurulum yaptığınız klasöre gidip “python.exe –version” komutunu çalıştırdığınızda karşınıza “Python 2.5.2″ gibi bir versiyon bilgisi geliyorsa python yorumlayıcınız çalışıyor demektir.

Şimdi ise NTLM APS’i aşağıdaki linkten indirerek daha sonra yazacağımız komutun kısa olması açısından C:altına indirdiğimiz zip dosyasını açalım. Dolayısıyla zip dosyası içindeki main.py dosyasının adresi C:ntlmaps-0.9.9main.py olsun. (Daha güncel versiyonlar varsa indirmek için şu adrese gidebilirsiniz : http://ntlmaps.sourceforge.net/)

NTLM Authorization Proxy Server

Açtığımız zip dosyasının içinde server.cfg isimli bir dosya olacaktır. Bu dosyada bulunan aşağıdaki parametreleri kullandığınız proxy ayarlarına göre örnekteki gibi değiştirmeniz gerekmektedir. Aşağıdakiler sadece örnektir, parametrelerin karşısına kendi bilgilerinizi girmelisiniz. Yukarıda da belirttiğim gibi ben NTLM APS için 9000 portunu örnek olarak kullanacağım, sizde seçtiğiniz uygun bir portu kullanabilirsiniz.

LISTEN_PORT:9000
PARENT_PROXY:192.168.1.10
PARENT_PROXY_PORT:8080
NT_DOMAIN:domain1.ofis
USER:user1
PASSWORD:sifre1

server.cfg dosyasını kaydetmeden önce isterseniz dosya içindeki “User-Agent:” parametresini aşağıdaki şekilde değiştirerek sistem yöneticilerinizin “Çok ilginç, birisi hala Windows 98 ve Internet Explorer 5.5 kullanıyormuş” diyerek araştırma yapmasını engelleyebilirsiniz. Aşağıdaki parametreyi değiştirdiğinizde, yapacağımız diğer ayarlar ile Outlook kullanmaya başladığınızda kullandığınız proxy server sizin Windows XP’de Internet Explorer 6.0 ile https bir sayfa açtığınızı sanacaktır.

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

Şimdi NTLM APS’yi çalıştıracağız. Bunun için bir command prompt açarak python yorumlayıcısını parametre olarak yukarıda bahsettiğim main.py’nin tam adresini vererek aşağıdaki gibi çalıştıracağız.

C:>Python25python.exe c:ntlmaps-0.9.9main.py
NTLM authorization Proxy Server v0.9.9
Copyright (C) 2001-2004 by Dmitry Rozmanov and others.
Now listening at webdev on port 9000

Yukarıdaki gibi bir çıktı alıyorsanız NTLM APS çalışıyor demektir. Açık olan command prompt’u kapatmamamız gerekiyor. Hem command prompt un açık kalmasını istemiyorsanız hem de daha kolay bir şekilde NTLM APS’yi başlatmak istiyorsanız C:ntlmaps-0.9.9 klasörü altındaki runserver.bat dosyasını açarak ikinci satırını yukarıda çalıştırdığınız komutla değiştirip kaydedebilirsiniz. Böylece sadece runserver.bat dosyasına tıklayarak NTLM APS’yi başlatabilirsiniz.

Bu noktada herşeyin doğru şekilde çalıştığını kontrol etmek için Firefox’u açarak Tools->Options->Network menüsüne gelip “Settings” butonuna tıklayarak aşağıdaki gibi HTTP proxy olarak 127.0.0.1 IP sini ve 9000 portunu (NTLM’i çalıştırdığınız port) ayarlayın. Daha sonra google.com’a girmeye çalışın. Eğer Google size merhaba diyorsa herşey doğru demektir. Eğer “Proxy server refusing connection” gibi bir hata alıyorsanız ve NTLM APS’nin doğru şekilde çalıştığından eminseniz, ya server.cfg içindeki proxy ayarlarınızı yanlış girdiniz ya da firefox için yaptığınız ayarda bir hata yapıyorsunuz demektir.

 

Putty ile SOCKS proxy hazırlanması:

Yukarıdaki aşamayı başarılı bir şekilde geçtikten sonra putty programı ile uzaktaki SSH sunucumuza bağlanarak bir SOCKS proxy oluşturacağız. Bu proxy’i makinamızın 9999 portuna bağlayacağız. Bu aşamada özet olarak putty’e NTLM APS’nin bize sağladığı proxy bilgilerini gireceğiz. Sonra 9999 portu için bir tünel oluşturacağız. SSH bağlantısının sürekli kesilmemesi için de bağlantı için keep-alive özelliğini aktif hale getireceğiz. Bu aşamanın sonunda internet kısıtlamalarını aşmış olacağız. Geriye sadece istediğimiz programın sockscap sayesinde SOCKS proxy ile çalışmasını sağlamak kalacak.

Putty’i aşağıdaki adresten indirip çalıştıralım.

http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

Aşağıdaki gibi bağlanacağımız makinanın IP ve portunu girerek bu bağlantıya bir isim verelim.

Daha sonra soldaki menüden Connection’a tıklayarak “Enable TCP keepalives” seçeneğini seçili hale getirelim.

Sonra, “Connection” altındaki “Proxy” başlığına tıklayarak NTLM APS’ye bağlanacağımız proxy ayarlarını yapalım. Burada “Proxy Hostname” olarak “127.0.0.1″,  Port olarak “9000″ (ntlm aps’i çalıştırdığımız port) girecek ve Proxy Type olarak da “HTTP”yi seçececeğiz.

Şimdi ise “Connection->SSH->Tunnels” başlığına tıklayarak bir port forwarding ayarı yapacağız. Böylece SOCKS proxy için gereken portu SSH bağlantımıza yönlendirmiş olacağız. Bu kısımda yapacağımız şey “Source Port” yazan kısma “9999″ (ya da istediğiniz başka bir uygun port) yazmak ve “Destination” bölümünde hem “Dynamic” hem de “Auto” seçeneklerinin seçili hale getirmek olacak. Bunları yaptıktan sonra “Add” butonuna tıklayarak portu yönlendirme için gereken ayarı tamamlamış olacağız.

Son olarak yapacağımız işlem soldan en üstteki “Session” başlığına tıklayarak sağdaki “Save” butonuna tıklayarak tüm ayarlarımızı bağlantıya verdiğimiz isim ile kaydetmek olacak. Böylece her seferinde tekrar tekrar ayarları yapmak durumunda kalmayacağız. Şimdi “Session” bölümünden ayrılmadan sağdaki “Saved Sessions”ın altında artık yer alan kaydettiğimiz bağlantıya çift tıklayarak bağlantıyı açacağız. Bu işlem esnasında mutlaka NTLM APS’in çalışıyor olması gerekiyor.Çünkü putty bağlantı için NTLM APS’in sağladığı bağlantıyı kullanacak.

Eğer herşey yolunda gitti ise, karşınıza “Login as:” yazan bir ekran gelecektir. Bu ekrana SSH kullanıcı adı ve şifrenizi (örneğimizde “sshuser” ve “sshpass”) girerek SSH sunucusuna giriş yapacaksınız. Böylece bilgisayarımızın 9999 portu bizim için SOCKS proxy bağlantımız olacak. Ve bu bağlantı ile internet üzerindeki tüm kısıtlamaları kaldırmış olacağız.

Eğer bu aşama sonucunda bağlantı sağlayamadı iseniz:

  • putty ayarlarınızı doğru yaptığınızdan,
  • NTLM APS’nin putty’de proxy olarak ayarladığınız portta çalışıyor olduğundan,
  • NTLM APS’nin normalde kullandığınız proxy serverınızla bağlantı kurabildiğinden (yukarıda Firefox ile nasıl test edeceğinizi yazmıştım),
  • SSH sunucunuzun 443 portundan erişilebilir ve çalışır durumda olduğundan,
  • SSH sunucunuza erişmek için kullandığınız putty’e session bölümünden “hostname” olarak girdiğiniz alan adı ya da IP’nin kullandığınız proxy tarafından engellenmediğinden emin olmalısınız.

Eğer herşey yolunda gitti ve ssh sunucunuza giriş yapabildiyseniz putty’yi çalışır halde bırakarak bir sonraki aşamaya geçebilirsiniz.

Sockscap ile MS Outlook’un SOCKS proxy ile çalıştırılması

Örneğimizde arkadaşım Outlook kullanmak istediği için Sockscap programı ile Outlook’un nasıl çalıştırılacağını anlatacağım. Aslında bir exe’si olan herhangi bir programı Sockscap ile çalıştırmak Outlook çalıştırmaktan farklı değil. Sockscap’ın güzel bir özelliği programa istediğiniz kadar program ekleyebiliyor olmanız. Böylece Sockscap’ı açıp kaydettiğiniz programları tek bir butona tıklayarak tekrar ayar yapmadan çalıştırabilirsiniz.

Öncelikle Sockscap isimli programı indirmemiz gerekiyor. Aşağıdaki linke tıklayarak programın 2.40 versiyonunu bu site üzerinden temin edebilirsiniz.

Sockscap 2.4 link

Programı kurup çalıştırdığınızda genel ayarların yapılacağı bir pencere gelecektir. Bu ayarlara istediğiniz zaman  “File->Settings” menüsü ile erişebilirsiniz. Ayarlar kısmında SOCKS server olarak “localhost”, port olarak putty’de “tunnels” bölümünde yönlendirdiğiniz portu (örneğimizde 9999 portu) girmelisiniz. Sonra “SOCKS Version 5″i seçerek “Name Resolution” kısmında “Resolve all names locally” seçeneğini işaretlemeniz gerekmektedir. Bu ayarları yaptıktan sonra “OK” diyerek ayarlarını kaydedin.

Daha sonra yapacağımız şey programın normal ekranında sol üstteki “New” butonuna tıklayarak Outlook programını programa kaydetmek olacak. Bunun için “New”e tıkladıktan sonra gelen pencerede “Profile Name” olarak herhangi birşey (örnek : “Outlook with Sockscap”) yazıp, “Browse” butonuna tıklayarak Outlook programının exe’sini bulup göstermek gerekecek. Ya da Outlook’u çalıştıran exe’nin tam adresini biliyorsanız “Browse” yapmadan “Command Line” bölümüne elle de yazabilirsiniz. Eğer “Browse” ile exe’yi seçerseniz “Working Directory” otomatik olarak tamamlanacaktır. Burada önemli olan sadece doğru exe yi ve bu exe’nin bulunduğu klasörü girmektir. Daha sonra “OK” diyerek programı sockscap’a kaydedebilirsiniz.

MS Outlook için ayarlarımızı yukardaki şekilde kaydettikten sonra, eğer NTLM APS ve putty çalışıyorsa Sockscap programı ana ekranında kaydettiğimiz Outlook profiline tıklayıp sağ üstteki “Run!” butonuna tıklayarak programı hazırladığımız SOCKS proxy ile çalıştırabiliriz. Böylece amacımıza ulaşmış olduk.

Notlar :

Yukarıda anlattığım yöntemi test ederek ben SSH sunucusu olarak Debian Sarge işletim sistemine sahip bir VPS kullandım.

Putty’de session kısmında hostname olarak ben direkt domain yazdım ancak eğer problem olursa direkt IP yazmak daha sağlıklı olabilir.

SSH sunucu olarak evdeki Linux makinanızı kullanmak isterseniz mutlaka modeminizde 443 portu ile ilgili yönlendirmelerinizi yapmış olmanız ve sabit bir IP’nizin olması gerekir.

Bu yöntemle yapacağınız tüm bağlantılar SSH bağlantısı yaptığınız makinaya da aynen yansıyacaktır. Yani 1 gb trafik yaptı iseniz, SSH sunucusu olduğunuz makina da en az 1 gb trafik yapmış olacaktır.

Bu yöntemde SSH kullandığımız için giden gelen tüm veriler enkripte edilecektir. Dolayısıyla da normalde 10 KB olan bir e-postayı bu yöntemle çekerken şifreleme nedeniyle 10KB den daha fazla bir data trafik olarak yansıyacaktır.

Bu yöntemde izin verilen portlardan biri (443) kullanıldığı için teorik olarak bulunduğunuz network’ün güvenliğine bir kasıt ve tehdit oluşturmamış olursunuz. Ancak sonuçta bulunduğunuz yerdeki kurallar çok farklı olabileceği için bu yöntemi kullandığınızda başınız belaya girebilir. Bu nedenle ya bu yöntemin bulunduğunuz yerin kurallarına aykırı olmadığından emin olun, ya da bu yöntemi kullanmayın. Ben işin teorik yönünü paylaşmaya çalıştım, yöntemi kullanıp kullanmamak tamamen sizin kararınızdır. Uyarmış olayım da sonra başınıza bir sıkıntı gelmesin.

Bu yöntem MSN için de kullanılabilir mi? Evet kullanılabilir. Hatta Pidgin (eski adı ile Gaim) SOCKS proxy desteklediği için Sockscap’a gerek kalmadan MSN için bu yöntemi kullanabilirsiniz.

SSH sunucumuzda 443 yerine başka bir port kullansak olur mu? Bu bulunduğunuz yerde kullandığınız proxy’nin kısıtlamalarına bağlı. Hemen her HTTP proxy HTTP (port 80) ve HTTPs (port 443) protokollerini kısıtlamadığı için bu portları SSH sunucu portu olarak kullanmak en sağlıklı yöntemdir. Ancak eğer proxy’niz başka bir porta erişim sağlıyorsa o portlar da kullanılabilir. Ancak 443 ya da 80 kullanmak proxy’e internette bir site açtığınızı zannettireceği için farkedilmesi daha zor olacaktır. Örneğin 22 portu açık bile olsa, hergün 22 portunda sürekli bağlı kalmak sistem yöneticilerinin ilgisini daha çabuk çekebilir.

Kullandığım proxy sadece belirli sitelere girmeme izin veriyor, hala bu yöntemi kullanabilir miyim? Eğer girebildiğiniz siteler ya da IP’ler arasında kullanacağınız SSH sunucunun IP’si ya da adresi de yer alıyorsa kullanabilirsiniz. Ancak zaten proxy ile SSH sunucunuzun IP sine ulaşamıyorsanız, bu yöntem SSH sunucunuza bağlanamadığınız için doğal olarak işe yaramayacaktır.

Bu konuda aklınıza takılanları yorum olarak iletebilirsiniz.

 

Benzer Konular

Tags: , , , , , , , ,


You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

AddThis Social Bookmark Button
12345 (No Ratings Yet)
Loading ... Loading ...

30 Responses to “HTTP Proxy veya internet kısıtlamaları nasıl aşılabilir?”

  1. ben bu işi daha kısa yoldan yapıyorum sağolasın uzun uzun yazmışsın emek sarfetmişsin ama bir sorum var. Vidalia
    FreeCap ile internetexplorer ile delip geçiyorum benim ne yaptığımı görürlermi outlook ta paşa paşa çalışıyor. dosya indirmemide engellemişlerdi onuda aşmış oldum. ama suç teşkil edecek bir şeyi asla yapmıyorum. yapmamda. mesela yavaşlamasın diye video açmayın diyorlar engellemelere rağmen benim sistem açıyor ama ben açmam. youtube engellenmiş hem bizim kurum hemde telekom kapatmış ama ben açabiliyor olmama rağmen açmıyorum. benim ssl ile şifrelenmiş bu alışverişimi takip edebilirlermi ne görünür? hoşça ve dostça kalın.

  2. SSL ile şifrelenmiş bile olsa,

    - Eğer alan adı çözümlemelerinde kullandığınız DNS sunucusu networkte herkes tarafından kullanılan DNS sunucusu ise, DNS sunucusunun özelliğine göre DNS sunucusuna gelen alan adı çözümlemeleri loglanabilir.

    - Eğer benim yazdığım örnekte olduğu gibi mutlaka yasağı koyan proxy üzerinden geçmeniz gerekiyorsa, yapacağınız isteklerle ilgili en azından header bilgileri görüntülenebilir.

    - Trafiğin kendisi SSL nedeniyle izlenemiyor olsa da, herhangi bir sniffer ile şüpheli istekte bulunan bilgisayarlar IP ya da MAC adresinden aynı network içinde iseniz kolayca tespit edilebilir.

  3. vb.net de bir rss reader yapıyorum vede çalışan program işyerinde değiniz gibi 407 hatası alıyorum bunu kodlama ile aşamadım yardımcı olabilirmisiniz?
    rss leri okulam için rssoku adında bir function yarattım bunu kullanıyorum

  4. 407 hatasının tek sebebi yukarıda anlattığım nedenler olmayabilir. Ben zaten koşulları az-çok saydım, internete normalde proxy üzerinden bağlanıyorsanız, bir windows domain üzerinde iseniz ve proxy sunucunuz eğer Microsoft ürünü ise internete başka bir yolla ulaşmak istediğinizde, 407 hatası ile karşılaşıyor olabilirsiniz.

    Ayrıca problem, yapmaya çalıştığınız RSS okuyucunuzun normalde iş yerinizde bağlanabildiğiniz RSS kaynaklarına bağlanamaması mı? Yoksa zaten bu RSS kaynaklarına ulaşamıyorsunuz da, yukarıda anlattıklarıma benzer bir şekilde ulaşmaya mı çalışıyorsunuz tam olarak anlamadım.

    Eğer Vb.net ile yukarıdaki yöntemi bir program içine gömmek isterseniz, öncelikle kullandığınız HTTP proxy ile bağlantı kuracak, sonra da socket bağlantısı ile uzaktaki bir SSH sunucusuna bağlanacak bir program kodlamanız gerekir. Vb.net ile bu konuda ne kadar esnek bir uygulama çıkarılabilir bilmiyorum.

    Size kolay gelsin, kodu açık olan -varsa- .NET ile yazılmış SSH client, Socks proxy client ve proxy kimlik doğrulaması yapabilen uygulamaları incelemenizi tavsiye ederim.

  5. Merhaba

    benim size sormak istediğim şu önce putty ile bağlandım ama 1 gün sonra sistemden 407 hatası aldım ve int. ararken sizin yazınızı buldum ve ntlmap kurdum ve anlattığınız gibi yaptım ama çok uğraştım ve en sonunda filitreyi deldim.

    ben dosya indiriyorum örn. rapidshare den ama dosyalar 100mb ve dosyayı indirmeye başlıyorum ve tama 35 dakika sonra server aniden kesiliyor ve ntlmap değil putty den kesiliyor ve rootshell hesabım var orası kesiliyor
    tekrar bağlanınca int. geliyor ama bizim dosya yarım kalıyor bunun için ne yapabilirim
    başka hesap aldım oceanius tan ama onada bağlanamıyorum bu hesap almakta çok zor iş hem ingilizce hemde kaç defa başvurdum ama hiç cevap vermiyorlar

    sizden ricam bu derdime çare varsa

    teşekürler

  6. Eğer ssh bağlantınız kopuyorsa, ssh sunucunuzun ssh ayarları ile oynayarak bağlantı timeout sürelerini yükseltebilirsiniz. /etc/sshd altında bulacağınız ayarlar bir çok konuda size yardımcı olacaktır.

  7. Merhaba
    ben bu ssh bağlantımın ayarlarını putty den mi yapıcam yoksa başka yerdenmi çünkü bir türlü bağlantı kesilmesini önleyemedim

    30 dk içinde kesin bağlantı kopuyor putty de ssh ayar yerlerine baktım ordaki ayarları kurcaladım ve yükselttim hiç faydası olmadı aksine biraz daha çabuk kesilmeye başladı bağlantı acaba bu ssh ayarlarını tam olarak nasıl yapıp bağlantının kopmasını engelleyeceğiz

    birde sizin dediğiniz /etc/sshd nerde bulamadım

    teşekürler yardımlarınız için

  8. ssh ayarlarınızı, ssh ile bağlandığınız sunucu üzerinde yapmanız gerekiyor. Ancak bu ayarları yapmak için gerekli yetkiye (root, sudo) sahip olmalısınız. Ssh ile bağlandığınız makina Debian türevi bir Linux dağıtımı ise /etc/sshd altında konfigürasyon dosyalarını bulabilirsiniz. Eğer farklı bir dağıtım ise Google’da “dağıtım isminiz + ssh timeout configuration” gibi bir arama yaparsanız size yardımcı olacak birçok kaynak bulabilirsiniz.

    Kolay gelsin.

  9. demir demirhan Says:

    Merhaba uğur bey
    ben anlattıklarınızla işyerimden internete sınırsız bağlanabiliyorum
    yani filitre programı olan websenseyi geçtim ve sizin sayenizde

    daha öncede söylediğim gibi şimdiki sorunum bağlantını kesilmesi ve dediğiniz gibi makine ayarlarını yapmak için dağıtım isminiz ve ssh timeout diye arayıp bulucam ama dağıtım ismini nerden bulucam makinenin
    bu konudada bana yardımcı olursanız

    birde obs biriminde(bilgisayarlarla ilgilenilen yer) çalışanlar benim makineye böyle proxy ile bağlandığımı görürlermi veya başım belaya girermi ?

    teşekürler

  10. Genelde linuxta dağıtım isimleri /etc/issue dosyasındadır. Bu dosyaya bakabilirsiniz. Ya da daha öncede de dediğim gibi /etc/sshd altında bulabilirsiz, ssh ayarlarını. En kolayı terminal’den find ile sshd ya da ssh diye aratabilirsiniz.

    Bunlar haricinde şunu önemle belirtmem gerekiyor ki, bu yazı ile iş yerlerindeki internetle ilgili yasakları kimseye farkettirmeden aşmak gibi bir konuyu anlatmaya çalışmıyorum. Burada anlatılan, konunun teorik yönüdür. Dolayısıyla sizin şirketinizde yaptığınız bu işlemin takip edilip edilemeyeceği ile ilgili birşey söyleyemeyeceğim. Zaten bu konu tamamen sizin network yapınız, sisteminizi kontrol eden araçlar, insanlar vb. birçok belirsiz parametre içeriyor.

    Bunlar haricinde yorumları baştan sona takip ederseniz, buna benzer bir soruya vermiş olduğum teknik cevabı bulabilirsiniz.

    Özetle söylemek gerekirse, internete bu şekilde açılmanız iş yerinizde yasak ise, başınız çok rahatlıkla belaya girebilir: örneğin işinizden olabilirsiniz. Network üzerinde net bir analiz yapabilecek herkes ya da yetkin her network aracı tam olarak nereye bağlandığınızı göremeyecek olsa bile, en azından sürekli ve tekrarlı bir şekilde yapılacak bağlantılar şüphe uyandırır ve uyandırmalıdır da. Böyle bir şüphe olursa da takip etmesi çok kolay olacaktır.

  11. Öncelikle detaylı anlatımınız için teşekkürler.
    Şirketimizde …proxy adıyla ve 8080 portuyla proxy üzerinden internete bağlanıyoruz. Tam olarak bilemediğim, sizin anlattığınıza benzer bir filtreleme yapılıyor.
    Anlattıklarınızı harfiyen yaptım. Ancak son aşamadaki “login as” ekranı çıkmayıp putty hata veriyor. Sizce problem başka ne olabilir?
    Dediğim gibi tüm işlemleri harfiyen yaptım ve 127.0.0.1 - 9000 portundan internet bağlantısı var. Ama filtreli :(

  12. Bu virtual host için (example.com) ne yapmamız gerekir?
    Biraz açabilir misin?

  13. Son yazdığınız iki yorumunuzu birlikte değerlendirince, sizin -sanırım- ssh bağlantısı yapmanız için gerekli bir Linux sunucunuz olmadığını düşündüm. Çünkü yazıda da ima ettiğim gibi bu tür bir işlemi yapabilmek için bulunduğunuz ortamdan IP ve portu ile erişebildiğiniz proxy alanı dışında, internete açık, SSH hizmeti verebilen bir sunucuya ihtiyacınız olacak. Bu IP’sine erişebildiğiniz ve OpenSSH kurduğunuz evdeki Linux makinanız olabileceği gibi, hosting vb işleriniz için kullandığınız SSH erişimine açık, internet konusunda herhangi bir kısıtlaması olmayan bir VPS ya da hosting alanı da olabilir.

    Yazı da bu konu şu şekilde belirtmiştim :
    “Dışarda bize internete girmemizi sağlayacak ssh sunucusu olan ve ssh a bağlanmak için 443 portunu kullanabildiğimiz bir Linux makina ya da virtual host (VPS) için kullanacağımız örnek bilgiler aşağıdaki gibi olsun.”

    Dolayısıyla yukarıdaki şartları taşıyan bir sunucu olmadan (ki olduğu zaman example.com yerine bu sunucunun IP’sini yazmanız gerekiyor) bu işlemlerden bir sonuç alamazsınız. Çünkü kısıtlamayı aşmanın mantığında, dışarıda internete açık bir makinanın üzerinden proxy’yi aşarak internete bağlanmak var.

    Umarım açıklayıcı olmuştur, kolay gelsin.

  14. Uğur usta sizin dediğiniz gibi filtreyi aştım ve uzun zamandır kullandım ama şuan websensenin kısıtladığı sitelere giremiyorum yani filtreyi artık geçemiyorum aynen eskisi gibi yapıyorum ama normal sitelere giriyorum ama diğer sitelere girmeye kalktığımda filitreye takılıyor.

    acaba siz bu yöntemi bulduğunuz gibi şuan başka bir yöntem varmı

    teşekürler

  15. ben bilgisayardan bek anlamam telekom camfrog programını yasakladı dsn degiştirek giriyordum onuda kapatılar scokscap programını indirdim anlamadıgım içi giremedim banada yardımcı olurmusun

  16. c# da web service de sms servisi yazıyorum. ama herseyi cok ıyı kontrol etmeme rahmen yıne de 407 proxy hatası verıyor??? ne yapabıllırırm!!

  17. @dem3r3 : Yani tüm konfigürasyonlara bakmadan net birşey söyleyemiyorum ancak firefox ile bağlanıyorsanız internete, about:config den network.proxy.socks_remote_dns ayarını bir kontrol edin, DNS çözümlemeleri de socks proxy üzerinden geçerse daha iyi olur. Bahsettiğim ayar true olursa SOCKS üzerinden geçen domain IP leri karşı taraftan istenir, websense filter a takılmamış olur.

  18. @selcuk : Bu yazı programlama ile ilgili bir çözüm önermiyor. Muhtemelen yaşadığınız problem klasik 407 authentication hatası, eğer yazacağınız web servis aynı bağlantı konfigürasyonları ile canlı sisteme alınacaksa proxy server a C# ile authentication yapmayı deneyebilirsiniz. Ulaşmaya çalıştığınız web servis bir proxy arkasında ise tabii. Değilse başka bir problem vardır, onu C# web servisleri ile alakalı olarak aramanız gerekebilir.

  19. @gokhan : belli bir site ya da IP yi engellemenin o kadar çok yöntemi var ki, hangi yönetimin kullandığına dair bir analiz yapmadan birşey söylemek pek mümkün değil. Ancak eğer internetini kullanabileceğin ve IP’si bulunduğun ortamda engellenmemiş olan bir linux makinası bulabilirsen (evdeki sabit IP li ve dışarı 22 portu açık Ubuntu makinası da olabilir) SOCKS proxy kullanarak engeli aşmayı deneyebilirsin.

    SOCKS proxy kullanmak için plink ya da putty kullanabilirsin. Nasıl konfigüre edeceğin ile ilgili http://linux-tr.net forumunda ilgili bölüme sorunu iletirsen forumdaki arkadaşlar yardımcı olmaya çalışırlar.

  20. arkadaslar free (VPS) veren bildiginiz bir yer varmi ?

  21. Merhaba,

    Verdiğiniz bilgiler insanın ufkunu açıyor.
    Emeğiniz için teşekkürler.
    Benim sorum; linux olmayan bir makinede bu işlem yapılabilir mi? yani diğer işletim sistemleri için de SOCKSproxy gibi bir proxy var mı?
    Lütfen yardımcı olun..

  22. Burada yazılanlar aslında bu tür birşeyin Windows’ta nasıl yapıldığını anlatıyor. Sockscap zaten bir Windows uygulaması, putty de öyle. Ancak SOCKS server olarak kullanılacak olan sunucu bu aktarılanlar çerçevesinde Linux olmalı tabii ki. Eğer sorunuz konunun sunucu kısmı ile ilgili ise, şöyle bir arama yapabilirsiniz : http://kissa.be/8m7

    Ayrıca yorumlarınız için teşekkür ederim.

  23. Slm, uğur bey hastanede ağ bağlantısı sayesinde bilgisayardan internet üzerinden otomasyon programı kullanıyoruz. Ancak geçtiğimiz günlerde porttan internet üzerinden sayfalara girmemiz engellendi, yani kısıtlama getirildi. İnterneti eskisi gibi kullanabilme olasılığımız varmı acaba windows xp kurulu, otomatik IP verilmiş, ethernet kartı kullanıyoruz, IP DNS değiştirdik olmadı, proxy fire kurduk olmadı :(, yardımcı olursanız çok mutlu oluruz çok tşkler şimdiden ilginiz için.

  24. Eylem, bu yazı ve yorumlarda birkaç kez belirttim ama gene de tekrarlayayım, herhangi bir iş yerinde, kurumda çalışanların internet kullanımı ile ilgili kısıtlamalarını aşmaya çalışmak iş kanunları açısından yasal durumlar ortaya çıkarabilir. Sizin internet kullanımız ile ilgili kısıtlamanın nedenini bilmiyorum ancak lütfen bunu göz önünde bulundurunuz.

    Sorduğunuz konuya gelince, birçok detayı aktarmaya çalışmışsınız sorunuzda fakat işin özüne ilişkin bazı başka detayları da bilmek gerekiyor. Bunların başında da kısıtlamanın ne şekilde yapıldığını tahmin etmek geliyor.

    Kısıtlama ile ilgili farklı teknikler mevcuttur:

    - Bazı sitelere girebiliyor diğerlerine giremiyorsanız siteleri içeriklerine göre puanlandırıp, kategorize eden bir yapı kullanılmış olabilir.
    - Hiçbir siteye giremiyorsanız fakat internet üzerinden çalışan bir programı kullanabiliyorsanız (networkten çalışmadığına eminseniz) DNS çözümlemesi konusunda engel getirilmiş olabilir.
    - Ya da gene hiçbir siteye giremediğiniz halde internet kullanarak çalışan bir program kullanabiliyorsanız, belki sadece sitelere erişimde kullanılan 80 portu yasaklanmış olabilir.

    Bu durumların hepsi için geçerli olabilecek bir çözüm yok, bu durumları saymaya çalışsak sayfalarca ihtimal yazabilirim.
    Kısıtlamanın hangi metotla yapıldığı anlayabilmek için bazı yöntemler mevcuttur. Bunlar biraz teknik bilgi ile aslında herkesin kontrol edebileceği şeyler.
    Bunlardan bazılarını sayalım: (burada sayılanları yapabilmek için Windows+R tuşlarına birlikte bastığınızda gelen “Run” bölümüne “cmd” yazıp komut satırını açmanız gerekir)

    1. DNS adreslerinizi opendns, telekom dns adresleri vb. gibi alternatiflerle değiştirerek, komut satırında nslookup google.com yazıp enter’a bastığınızda Google’a ait IP listesini görebiliyor musunuz?

    2. Komut satırında ping 193.140.83.36 veya ping 195.175.39.40 yazdığınızda adreslere ulaşılabildiğini görebiliyor musunuz? Hata alıyorsanız, hata mesajında ne diyor.

    3. Komut satırında telnet 91.189.89.234 443 yazdıktan sonra hata mesajı mı karşınıza geliyor yoksa siyah boş bir ekran mı geliyor?

    4. Komut satırında telnet 193.140.83.36 80 yazdıktan sonra hata mesajı mı karşınıza geliyor yoksa siyah boş bir ekran mı geliyor?

    5. İnternet üzerinden çalışan bir program kullanıyorsanız, programı kullandığınız anda komut satırına netstat -a yaptığınızda karşınıza gelen listede aşağıdakine benzer herhangi bir satır geliyor mu? Nasıl bir liste görüyorsunuz?

    TCP makina1:4579 212.175.9.19:http ESTABLISHED

    Bütün bunları ya da benzeri başka şeyleri bilemeden kestirmeden verebileceğim bir cevap yok maalesef. Bu parametreleri test ettikten sonra elde ettiğin bilgileri iletmek istersen, sadece konu hakkında bilgi vermek amaçlı daha net bir cevap yazabilirim.

  25. slm Uğur Bey nasılsınız, öncelikle yardım etmeye çalıştığınız için çok teşekkür ederim, elinize sağlık. İnternet kısıtlaması sadece bizim birime özel yapıldı ve dr arkdşlar leptop getirdi onla bile giremedik. Siizn dediklerini harfiyen yapmaya çalıştım ve aşağıdaki gibi sonuçlandı;
    1.
    C:/Documents and Settings/admninistrator.ACILDESK1>nslookup google.copm
    DNS request timed out.
    Timeout was 2 seconds.
    ***10.8.101.90 asresinin sunucu ad_ bulunam_yor: Timed out
    Sunucu:UnKnown
    Adres: 10.8.101.90
    DNS request timed out.
    Timeout was 2 seconds.
    G_venilir olmayan yan_t:
    Ad: google.com
    Adreses: 209.85.227.104, 209.85.227.147, 209.85.227.106, 209.85.227.99
    209.85.227.105, 209.85.227.103
    C:/Documents and Setting/Administrator.ACILDESK1>

    2. İstek zmaan aşımına uğradı 193.140.83.36 için Ping istatistiği
    paket: Giden=4, Gelen= 0, Kaybolan=4 (100%kayıp>,

    3. siyah boş bir ekran
    4. Bağlanılıyor dedi siyah boş ekran oluştu
    5. İl.Kr. Yerel adres Yabancı Adres Durum
    TCP acildesk1:135 acildesk1.fuh…… LISTENING
    birkaç madde halinde böyle
    TCP Acildes1: 1098 10.8.101.91:8014 ESTABLISHED
    TCP acildesk1:1099 kazan.ulakbim.gov.tr:80 TIME_WAIT
    TCP acildesk1:1100 acildes1.fuh.adres.edu.tr:0 LISTENING
    TCP acildesk1: 445 *:* gerisi de böyle

    NOT: Mozille yükledik ancak gelen sayfada; Your page is blocked due to a security policy than prohibits accessto caltegory default

  26. Mrb, uğur bey yoğunsunuzdur düşücesiyle bir süre bekledim ancak hala bir haber yokmu acaba :( iyi çalışmalar dilerim…

  27. @Eylem :

    Görünüşe göre sizin için yapılan kısıtlamalar site puanlamaları ve site içeriklerine göre yapılan bir kısıtlama. Bunu aşabilmek için şu anda aklıma gelen tek yöntem, bulunduğunuz yer dışında, internet bağlantısı olan ve bir şekilde sizin bulunduğunuz yerden belli bir IP ya da port ile bağlanabildiğiniz başka bir makina üzerinden internete bağlanmak. Yani dışarıda internet bağlantısını kullanabileceğiniz bir makinaya içeriden uygun bir yöntemle bağlanmanız gerekiyor.

    Tabii buradaki uygun yöntem nedir onun belirlenmesi için başka testlerin de yapılması gerekiyor. Ayrıca sırf bu iş için dışarıda bu konuda kullanılabilecek bir makina ayarlamak da gerekiyor. Sizin bağlantı yapabilmeniz için de yukarıdaki yazıda anlatılana benzer birçok teknik ayar yapılması gerekir.

    Dolayısıyla kolayca yapılabilecek bir iş değil, teknik olarak bilginiz ne seviyede onu da bilemiyorum. Ancak muhtemelen bazı sitelere Firefox ile bağlanabiliyorsunuz şu anda. Denemek isterseniz http://kazan.ulakbim.gov.tr, https://shipit.ubuntu.com/ adreslerini açmayı deneyebilirsiniz.

  28. Uğur Bey, yardımcı olmaya çalışmanız bile yeterli benim için çok teşekkür ederim, ilginiz ve vermiş olduğunuz bilgiler için, iyi günler iyi çalışmalar…

  29. Mrb Uğur Bey, İnerneti başka bir yerden kablo ile getirdik pc ayarları aynı şimdi çalışıyor demekki inernet engelini dedikleri gibi porttan yapmışlar :) portu aşıcak bir program yok değilmi çünkü bilgisayarlar internete bağlı bir program çalıştırıyor, iyi günler

  30. serkan çalışkan Says:

    https yöntemini çaktılar http zaten kapalı maillerimiz outlok çalışıyor internete giremiyorum internet açmamım kolay başka yolları var mı yardımcı olabilirmisiniz tş.

Leave a Reply