IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 18 Temmuz 2005, 19:41   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
SSH Nedir ?




SSH, Telnet ve rlogin gibi ağ üzerindeki başka bir sunucuya uzakta bulunan bir başka makineden bağlantı sağlayan bir protokoldür. SSH açık haliyle “Secure Shellâ€? yani güvenli kabuk anlamına gelir. Telnet ve rlogin kullanıcı şifreleri dahil tüm iletişim açık yani şifrelenmeden gerçekleştirilirken, SSH güvensiz makineler arasındaki iletişimi güçlü bir kripto yöntemiyle şifreler.

SSH ile bağlantının gerçekleştirilebilmesi için Telnet bölümünde de anlattığımız üzere bağlanılmak istenen sunucu makinede bir kullanıcı hesabının ve kullanıcı şifresinin bulunması gereklidir. Bunların dışında birde SSH istemci programlarından birine ihtiyacımız olacaktır. SSH ile bir bilgisayara bağlanabilmek için kullanıcı, öncelikle kimliğini ispatlayabilmelidir. Bunu yapmanın, kullanılan protokollere de bağlı olarak, çeşitli yolları vardır.



SSH ile bağlantının sağlanabilmesi için iki farklı protokol kullanılabilir. Bunlar:



SSH protokol sürümü-1


İlk yöntem olarak, bağlanmak isteyen makinenin /etc/hosts.equiv veya /etc/ssh/shosts.equiv dosyalarından birinde listelenip listelenmediği kontrol edilir ve istemci makinede çalışan kullanıcı adı ile bağlanmak isteyen kullanıcı adı aynıysa, kullanıcının sisteme girmesine izin verilir. İkinci olarak, bağlanılmak istenen makinede kullanıcının varsa ev dizini altında .rhosts veya .shosts dosyasının olup olmadığı kontrol edilir; eğer dosyalardan biri varsa ve bağlanmak isteyen makine ile kullanıcının o makinedeki adı bu dosyada yazıyorsa, kullanıcının sisteme girmesine izin verilir. Ancak, normalde bu şekildeki kimlik denetimine güvenlik sebepleri yüzünden sunucu tarafından izin verilmez.

Kullanılan birincil yöntem RSA tabanlı kimlik denetimi ile birleştirilmiş rhosts ve hosts.equiv yöntemidir. Sunucuya ilk bağlantı gerçekleştirildikten sonra sunucu tarafından kullanıcıya bir anahtar atanır. Bu yöntemle gerçekleştirilen bir bağlantı üzerinde kullanıcı doğrulama yapılırken $HOME/.rhosts, $HOME/.shosts, /etc/hosts.equiv veya /etc/ssh/shosts.equiv dosyalarına bakılır. Bu dosyalardan herhangi bir tanesi bağlantıya imkan verir ve aynı zamanda sunucu istemcinin anahtarını doğrularsa kullanıcının sisteme girmesine izin verilir. Bu yöntem birçok güvenlik açığını kapatmaktadır.

Bir başka yöntem olarak da RSA tabanlı kimlik denetimi yapılır. RSA ile şifrelemede, şifreleme ve şifreyi çözme farklı anahtarlar tarafından yapılır ve şifreyi çözecek anahtarı diğer anahtardan elde etmek mümkün değildir. Buradaki fikir her kullanıcının kendine ait bir genel/özel anahtar ikilisi yaratmasıdır. Sunucu, şifrelemeye yarayan genel anahtarı bilir; onu çözecek özel anahtar ise sadece kullanıcı tarafından bilinir. $HOME/.ssh/authorized_keys dosyası bağlanmasına izin verilecek genel anahtarları içerir. Kullanıcı sunucuya bir bağlantı isteği yaptığı zaman, ssh sunucuya hangi anahtar çiftini kullanmak istediğini belirtir. Sunucu bu çiftin kullanımının izinli olup olmadığını kontrol eder ve izin verilmişse karşı tarafa şifrelenmiş bir mesaj -kullanıcının genel anahtarı ile şifrelenmiş rastgele bir sayı- gönderir. Mesaj sadece kullanıcının özel anahtarı ile çözülebilir. Kullanıcı tarafında özel anahtar ile mesaj çözülerek anahtarın kendisi sunucuya gönderilmeden özel anahtarın bilindiği kanıtlanır.

SSH RSA ile kimlik denetimini otomatik olarak destekler. Kullanıcı kendi anahtar çiftini ssh-keygen ile yaratır. Bu işlemin ardından özel anahtar $HOME/.ssh/identity dosyası içine, genel anahtar ise $HOME/.ssh/identity.pub dosyası içine kaydedilir. Bundan sonra kullanıcının yapması gereken, $HOME/.ssh/identity.pub dosyasını bağlanmak istediği makinede $HOME/.ssh/authorized_keys adlı dosyanın içine kopyalamaktır. Bundan sonra kullanıcı şifre girmeden karşı makineye bağlanabilir. RSA yöntemi diğerlerinden çok daha güvenilirdir.

Eğer bu anlatılan şekillerden biriyle kullanıcı kimliğini ispatlayamazsa kendisinden şifresi istenir. Ancak daha önce de belirtildiği gibi, tüm iletişim şifrelenerek yapıldığı için kullanıcı şifresinin ağı dinleyen bir kişi tarafından öğrenilmesi mümkün değildir.

SSH Protokol Sürümü-2
Kullanıcı bu protokol ile bağlanmak istediği takdirde iki denetim şekli söz konusudur: önce genel/özel anahtar yöntemi, başarısız olursa şifre isteme yöntemi.

İkili anahtar yöntemi yukarıda anlatılanla aynıdır; tek farkı şifreleme için RSA yerine DSA algoritmasının kullanılmasıdır. Sunucu bağlantıya izin verilen genel anahtarları $HOME/.ssh/authorized_keys2 dosyasında tutarken, kullanıcının özel anahtarı $HOME/.ssh/id_dsa dosyasında saklanır. Eğer genel anahtarın bağlantısına izin verilmişse ve kullanıcı tarafında özel anahtar ile şifre çözülebilirse bağlantıya izin verilir. Aksi takdirde, yukarıda da anlatıldığı gibi sunucu karşı taraftan bağlantı için kullanıcı şifresini ister.

Uzaktan erişim bugün en yaygın olarak SSH ile yapılmaktadır. Uzaktan erişim SSH protokolünün öncelikli kullanım alanı olmakla birlikte, genel kullanım amaçlı cryptographic tunnel, dosya kopyalama, email bağlantılarını şifreleme, ve uzaktan program çalıştırma amacı ile de kullanılabilir.



SSH, TCP üzerinden çalışır. En basit şekliyle, bir sunucuya bağlanır, Diffie Hellman kullanarak bir gizli anahtar oluşturur, daha sonra da oturumu şifrelemye başlar (Blowfish cipher kullanarak). Bir kullanıcı adı ve şifre bu şifreli oturum üzerinden yollanır, eğer onaylanırsa, sunucu bu şifreli oturum üzerinden bir komut istemi başlatır. Bu yüzden, en basit anlamıyla, SSH, TELNET’ten daha güvenli bir seçenektir.



Daha gelişmiş kullanımda, SSH, RSA veya DSA asimetrik anahtar çiftlerinin (RSA or DSA asymmetric key pairs) yaratılmasına izin verir. Private key bir identity dosyasında saklanır, muhtemelen passphrase kullanılarak şifrelenmiş şekilde. Public key ağ içinde serbestçe kopyalanabilir, genellikle kullanıcının onaylanmış anahtar listesinde (user’s list of authenticated keys) sonlanarak. Bir ssh sunucusu, onaylı public key ile private key eşleşmesiyle oturuma düzgünce bağlanmışsa (authenticate), bir şifre saðlamasına gerek duyulmadan login edilir. Bu, şifre kullanmadan login olmak için kullanılabilir. (2)





SSH İle TELNET Arasındaki Farklar


SSH bağlantının tüm içeriğini, ağ üzerinden gerçekleştirilebilecek tüm saldırılara karşı güçlü bir kripto yöntemiyle şifrelerken Telnet rotokolünde şifreleme yoktur ve iletişim açık bir şekilde gerçekleştirilir.



Bunun dışında Telnet protolü sunucu üzerindeki bazı ortamsal değişkenler üzerindeki ayarların değiştirilebilmesine olanak sağlar. Telnet’de sunucu üzerindeki ayarları sunucuya komut gönderilerek değiştirilebilir. SSH ve bazı modern Telnet sunucuları bunu desteklemez. Bu durumun en önemli nedeni ise sunucu üzerindeki bazı ayarların değiştirilmesinin güvenlik problemlerine neden olabilmesidir.



SSH ile ilgili bir diğer önemli özellik ise bağlanılmak istenen sunucuya şifre girme zorunluluğu olmamasıdır. SSH buna imkan sağlar. rlogin protokolü de şifresiz bağlantıya izin verir fakat bu işlemi güvensiz bir şekilde gerçekleştirir. SSH bunu daha güvenli bir şekilde yapar.



Son olarak SSH sunucuya bağlanmanızı ve otomatik olarak komut göndermenizi sağlar. Bu şekilde gönderilen komut sunucu tarafında işletildikten sonra bağlantı kesilir.





SSH Hangi Saldırılara Karşı Koruma Sağlar?

SSH aşağıdaki saldırılara karşı koruma sağlar:



IP gizleme yöntemiyle gerçekleşen saldırılar.
IP yönlendirme yöntemiyle yapılan saldırılar.
Saldırganın server isimlerinin bulunduğu kayıtları kullanarak gerçekleşen saldırılar.
İki makine arasındaki veri trafiğinin aradaki başka bir makine tarafından önünün kesilerek verilerin değiştirilmesi
İletişimin gerçekleştiği iki makine arasındaki herhangi bir sunucuda bulunan kötü niyetli kişilerin verileri değiştirmesiyle geçekleşen saldırılar
X11 sunucusundaki iletişim dinlenerek ve X doğrulaması temel alınarak gerçekleşen saldırılar.


Aslında SSH protokolunünü gerçekleşen saldırılara karşı koruma sağlamasındaki uyguladığı temel politika net üzerinden gelen hiçbir iletişime güvenmemesi ve bu iletişimi şifrelemesidir. Net üzerinden gerekli izni olmayan biri ancak SSH bağlantısının kesilmesini neden olabilir. Fakat gerçekleşen iletişim sırasındaki şifrelenmiş veri trafiğini çözemez. Buda paketlerin güvenli bir şekilde yerine ulaşması anlamına gelir.

Tüm bu şifrelemeler karşın kötü niyetli biri sisteme root kullanıcı hesabıyla giriş hakkı elde ettiği anda SSH protokolünü rahatlıkla geçebilir. Yine bu kötü niyetli kullanıcı home dizinine girdiği takdirde güvenlik yok olmuş demektir. Bu durum eğer home dizini NFS (Network File System) ile oluşturulmuş ise sıkça karşılaşılır. ( 3 )



SSH ile Bağlantının Gerçekleştirilmesi :


Bazı SSH istemci programları bağlantı için bir menu sağlarken bazıları bu iş için komut satırını kullanır. Komut satırından bağlantı gerçekleştirmek için aşağıdaki gibi bağlanılacak makinenin host adresi kullanılabilir. Bir diğer kullanış şekli ise “sshâ€? komutu ile birlikte sunucu makinenin ip adresini vermektir.


ssh irc.SERVER.net

ssh 155.452.69.5



Eğer belirttiğiniz bilgisayara SSH ile ilk kez bağlanıyorsanız, SSH size bunu gerçekten isteyip istemediğinizi soracak ve ekrana karşı makinenin adresi ve makine tarafından size verilen bir anahtar gelecektir. Eğer bağlantıyı onaylarsanız, karşı makinenin adresi ve makine tarafından size verilen bu anahtar $HOME/.ssh/known_hosts dosyası içine kaydedilir. Aynı makineye ikinci kez bağlanmak isterseniz bu soruyla tekrar karşılaşmazsınız. Sunucu tarafından makineye verilen anahtar daha sonraki bağlantılarda bilgisayarı teşhis etmek için kullanılır. Eğer anahtarda bir sorun varsa sunucu bağlantıyı kabul etmez. Bundan sonra karşı taraf sizden kullanıcı ismi ve kullanıcı şifrenizi ister. Bu, uzaktaki makineye girmekte kullandığınız her zamanki kullanıcı adı ve kullanıcı şifrenizdir. Eğer kullanıcı adınızı şifrenizi doğru girerseniz, telnet ya da rlogin ile alıştığınız konsol karşınıza çıkacaktır. Bu konsol yardımıyla komutları çalıştırarak işleminizi gerçekleştirebilirsiniz.



Bunun yanında karşıdaki bilgisayara o anda üzerinde çalışmakta olduğunuz bilgisayardakinden farklı bir kullanıcı adı ile bağlanmak isteyebilirsiniz. Bu durumda, kullanmanız gereken komut



ssh -l ircde irc.SERVER.net



ya da



ssh SERVERoper.SERVER.net



olmalıdır. Bu komut ile karşı makineye "apotek" kullanıcısı olarak bağlanmak istediğinizi belirtebilirsiniz.



Yukarıda özetlenen biçimde telnet veya rlogin ile alışılmış bağlantı işlemini çok daha güvenli bir yöntemle ssh aracılığıyla gerçekleştirebilirsiniz. Ancak, yukarıda anlatılan şekilde, her bağlantınızda sunucu sizden kullanıcı şifrenizi isteyecektir. Daha önceden de belirttiğimiz gibi SSH şifre sorulmadan makineye bağlantı gerçekleştirilmesine olanak sağlar. Eğer karşı makineye RSA yönteminin sağladığı kolaylıkla, sunucu sizden şifre istemeden bağlanmak isterseniz aşağıdaki adımları takip edin:



Öncelikle istemci makine üzerinde ssh-keygen programını çalıştırın:



ssh-keygen



Bu program sizin için RSA algoritması ile $HOME/.ssh dizini altında bir genel/özel anahtar çifti yaratacaktır. Özel anahtar $HOME/.ssh/identity, genel anahtar $HOME/.ssh/identity.pub dosyasına yazılacaktır.



Daha sonra istemci makinedeki $HOME/.ssh/identity.pub dosyasındaki anahtarı bağlanmak istediğiniz makinede $HOME/.ssh/authorized_keys dosyasına kopyalayın. Bunun için $HOME/.ssh/identity.pub dosyasını karşı bilgisayara attıktan sonra, $HOME/.ssh dizini içinde sırayla



cat authorized_keys identity.pub > tmp

mv tmp authorized_keys





komutlarını kullanabilirsiniz.



Bu işlemleri başarıyla tamamlarsanız, SSH ile bu makineye bir daha bağlanmak istediğinizde sizden şifre sorulmayacaktır. Kimlik denetimi, arka planda istemci ve sunucu arasında gerçekleşen anahtar çifti yöntemi ile yapılacaktır.



Bundan sonra her iki makine üzerinde de $HOME/.ssh/identity.pub dosyasına ihtiyaç kalmayacaktır. İsterseniz onları silebilirsiniz. Dikkat etmeniz gereken nokta $HOME/.ssh dizininin izinlerinin 0700 olduğudur. Diğer bir deyişle bu dizin üzerinde sadece kullanıcının kendisi işlem yapabilir. Bu izinleri değiştirmeyin. Ayrıca sözü geçen dosyalardan, $HOME/.ssh/identity dosyası sizin özel anahtarınızı içerdiği için başka kullanıcılar bu dosyaya erişememelidir. Bunun için dosyanın izinlerinin 0600 olarak kalmasını sağlayın. $HOME/.ssh/authorized_keys dosyasının da, özel anahtarınızı içeren dosya kadar kritik olmamakla birlikte, başkaları tarafından okunabilmesine gerek yoktur. İzinlerinin 0600 ya da 0644 olarak kalmasına dikkat edin. Zaten dosyalar yaratılırken bu özelliklerle yaratılırlar ve siz değiştirmezseniz herhangi bir sorunla karşılaşmazsınız. Bilgisayarlarla işiniz bittiğinde alanınızı da terk ederseniz, herhangi bir güvenlik sorunu yaşamamış olursunuz

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Alt 18 Temmuz 2005, 20:27   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)



telnet bilgiler guzeL ...

 
Alıntı ile Cevapla

Cevapla

Etiketler
nedir, ssh


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Konya Ziraat Bankası Yunak Şubesi Adresi Nedir? Telefonu Nedir? PySSyCaT İç Anadolu Bölgesi 0 09 Kasım 2014 18:44
Konya Ziraat Bankası Tuzlukçu Şubesi Adresi Nedir? Telefonu Nedir? PySSyCaT İç Anadolu Bölgesi 0 09 Kasım 2014 18:43
Konya Ziraat Bankası Taşkent Şubesi Adresi Nedir? Telefonu Nedir? PySSyCaT İç Anadolu Bölgesi 0 09 Kasım 2014 18:42
Konya Ziraat Bankası Seydişehir Şubesi Adresi Nedir? Telefonu Nedir? PySSyCaT İç Anadolu Bölgesi 0 09 Kasım 2014 18:41
Konya Ziraat Bankası Kadınhanı Şubesi Adresi Nedir? Telefonu Nedir? PySSyCaT İç Anadolu Bölgesi 0 09 Kasım 2014 18:25