Bir sorun giderme anısı

fixme

Geçenlerde bir arkadaşın  işyerinde test amaçlı bir ubuntu makine kurmaya çalıştık. Makinenin kurulacağı yer test odası kullanılacağı mekan ise sistem odası. Yani önce test  odasında kurulum yapılacak sonra sistem odasına taşınarak yönetimi uzaktan yapılacak.

Bu yazı kurulum sonrası erişimle ilgili yaşadığımız sorunları ve aşmak için denediğimiz yöntemleri aktarma amaçlı yazılmıştır.

Senaryo Başlıyor!

Ubuntu kurulumu sorunsuz tamamlandı.  Sonrasında makineye ip ayarları vs girilerek kapatacaktık ki son anda makineye uzaktan erişim için kullanacağımız SSH servisini  kontrol etmek geldi aklıma. Ve bu noktada ilk hayak kırıklığını yaşadık. Kurduğumuz Ubuntu dağıtımı ile birlikte Openssh gelmiyordu. Daha önce kullandığım tüm dağıtımlarda ssh’in default seçili olmasına alışkın olduğum için garibime gitti.

Sonra Ubuntu acemiliğimden bulamadığımı düşündüm ve internetten kurmak için apt-get install komutunu verdim ve ikinci hayal kırıklığını yaşadım. Bulunduğumuz ortamda  internet erişimi proxy üzerinden yapılıyor ve proxy de NTLM auth istiyordu.  apt-get’in ntlm auth desteği olmadığından -daha doğrusu tanımlayacağımız http_proxy çevresel değişkeninin ntlm auth desteği olmadığından- alternati fikirler düşünmeye başladık.

İkinci Adım


O anda aklıma eski dost Netcat geldi ve garip bir şekilde default kurulumla  birlikte geldiğini gördüm. Hemen gerekli testleri yaparak netcat ile uzaktan shell erişimi almaya çalıştık.

#netcat -e /bin/bash -l -p 9000

bu komutla sistemin 9000. portuna bağlandığımızda bizi /bin/bash’e yönlendirecekti ve ben de internet erişimi için gerekli işlemleri güvenlik duvarlarından yapacaktım. Sonrasında doğrudan apt-get install komutu ile istediğimizi kurabilecektik.

Konsol üzerinden yaptığımız çalışmalar başarılı oldu ve aynı komutu sistemin açılşında çalıştırmak için /etc/rc.local’e ekledim. Sistemi restart ederek tekrar test ettik fakat bir türlü netcat’i istediğimiz gibi çalıştıramadık, bazı komutları /bin/bash’e yönlendirirken bazılarını es geçiyordu. Birkaç deneme sonrası bu yöntemden de vazgeçtik… Tabi bu arada başımızda sistem odasına taşımak için bekleyen sabırsız arkadaşları hesaba katarak tek çözüm üzerinden fazla düşünem zamanımızın olmadığını da söylemek lazim.

Zaman daralıyor…

Sonra ağda doğrudan internet erişimi olan başka bir makine aklımıza geldi. Bu makine üzerinde aynı zamanda SSH sunucusu da çalışıyordu. Son bir çare olarak bu makine üzerindeki SSH servisini socks proxy olarak kullanma fikrini denemeye başladık.

    ssh -D 8080 [email protected]

bu komut sonrasında artık 8080 portunda dinleyen ve bizi internete ulaştıracak  bir socks proxymiz oldu. Firefox’un proxy ayarlarını bu porta göre düzenleyerek internete çıkmış olduk:). Ama internete çıkmak yetmiyordu bize, komut satırından kuracağımız SSH sunucu lazımdı. Önce Firefox aracılığı ile ssh paketlerini indirelim dedik ama bağımlı paketlerin hepsini de indirme zorunluluğunu düşünerek vazgeçtim(belki de hiç bağımlılık gerektirmeyen bir paketti openSSH)

Sonra 8080 de dinleyen proxy’i çevresel değişken olarka anımlayıp apt-get’in bu proxy üzerinden işlem yapmasını istedik ve

 export http_proxy="http://localhost:8080"

komutunu verip tekrar apt-get install … komutunu çalıştırdık tabi komutu çalıştırdığım anda negatif bir sonuç döneceğini anladım zira apt-get vs gibi sistemler socks proxy kullanabilecek kapasitede değillerdi.

Son vuruş

Ne yapalım ne edelim derken son anda aklıma socks proxy desteği olmayan yazılımlar için kullanılan tsocks geldi. Hemen Firefox aracılığı ile tsocks’u indirip kurdum ve ayarlarını yaptım(localhost:8080 dinle şeklinde). Sanırım bu artık derdimizi çözecekti ki öyle de oldu.

tsocks apt-get install ...

komutu sorunsuz çalıştı ve yaklaşık 1 saat sonra Ubuntu sisteme ssh kurmuş olduk.

Belki çok daha basit yöntemleri vardı ben bilmiyordum ama o bir saat içerisinde Linux ve network erişlebilirliği konusundaki çoğu bilgimi tazeleme fırsatı buldum. Kaybolan bir saate bir de bu yönünden bakmak lazım:)

This entry was posted in Fun, Hayat. Bookmark the permalink.

1 Response to Bir sorun giderme anısı

  1. Serdar says:

    Tabii NTLM auth bağımlılığı bunu mümkün kılarsa benim aklıma daha kolay bir yöntem olarak getdeb.net adresinden ilgili yazılımın .deb paketini sisteme indirip çift tıklamayla kurmak geliyor. 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

7 − six =