[LinuxFocus-icon]
Ev  |  Eri�imd�zeni  |  ��indekiler  |  Arama

Duyumlar | Belgelikler | Ba�lant�lar | LF Nedir
Bu makalenin farkl� dillerde bulundu�u adresler: English  Castellano  Deutsch  Francais  Nederlands  Turkce  

convert to palmConvert to GutenPalm
or to PalmDoc

Bernard Perrot
taraf�ndan Bernard Perrot
<bernard.perrot%28at%29univ-rennes1.fr>

Yazar hakk�nda:
Bernard, 1972'den beri CNRS ( Frans�z Ulusal Ara�trma Merkezi )'nde Sistem ve A� M�hendisi olarak �al��maktad�r."Institut National de Physique Nucl�aire et de Physique des Particules" (In2p3)'de bilgisayar sistemleri g�venli�i ile g�revlidir.�u an, Fizik ve Matematik B�l�m�'n�n Matematik Ara�t�rma Enstit�s�'nde �al���yor.

T�rk�e'ye �eviri:
�zcan G�ng�r <ozcangungor%28at%29netscape.net>

��erik:

 

Secure your connections with SSH

ssh

�zet:

Bu makale ilk defa Linux Magazine France'�n g�venlik �zerine olan b�l�m�nde yay�nlanm��t�r.Edit�r, yazarlar ve terc�manlar, bu konu hakk�ndaki her makalenin LinuxFocus'ta yay�nlanmas�na izin vermi�lerdir.LinuxFocus, bunlar� �ngilizce'ye �evirir �evirmez size sunar.Bu i�le ilgili b�t�n ki�ilere te�ekk�r ederim.Bu tan�t�m, bu k�kene ait b�t�n makalelerde yer alacakt�r.
Bu makalede size SSH'i ve onun nas�l kullan�ld���n� anlataca��z.Bu bir kullanma klavuzu ya da y�kleme prosed�r� de�ildir.Daha �ok �zel s�zc�klerin anlam�n� ve SSH'in �zelliklerini anlat�r.Verilen linkler ve d�k�manlar, SSH'in kullan�m� hakk�ndaki b�t�n bilgileri i�erir.

_________________ _________________ _________________

 

SSH Ne ��in Kullan�l�r ?

�ncelikle ( ve kronolojik olarak), SSH (ssh komutu), rsh ( ve rlogin ) komutlar�n�n g�venli bi�imidir.rsh'�n "Remote SHell ( uzak kabuk )" anlam�na geldi�i gibi ssh de "Secure SHell ( g�venli kabuk )" anlam�na gelir.rsh size kullan�c� yetkilendirmesi istemeden uzak kabu�a izin verir.ssh de ayn� servisi sa�lar ancak y�ksek ve �oklu seviyeli g�venlik i�erir.
E�er bu konu hakk�nda fazla bilginiz yoksa, yapca��n�z tek �ey telnet,rsh ve rlogin gibi komutlar�n yerine ssh kullanmakt�r.Her�ey ayn� �ekilda �al��acakt�r ancak daha g�venli bir �ekilde.
Yani,

% rlogin serveur.org (or telnet serveur.org)

yerine

% ssh serveur.org

kullanacaks�n�z.
SSH'in basit kullan�m�ndan kaynaklanan g�venlik kazalar� daha �ok kurbanlar�n ihmallerinin sonucudur.

 

Gerekenler Nelerdir ?

A�a��da ba�lant�lar�n baz� �ok �nemli durumlar� hakk�nda �neriler vard�r: Bunlara kar�l�k yeterli olmayan baz� ��z�mler: Ve i�te SSH, g�zel bir ��z�m:  

SSH S�r�m 1 ve SSH S�r�m 2

Bu d�nyada hi�bir �eyin m�kemmler olmad��� gibi iki uyumsuz SSH protokol� s�r�m� vard�r: 1.x s�r�m� (1.3 ve 1.5) ve 2.0 s�r�m�.Kullan�c� i�in bir versiyonda di�erin ge�mek zor de�ildir.Hem sunucuda hem istemcide ayn� versiyonun olmas� yeterli.
SSH s�r�m 1 birle�iktir ancak SSH s�r�m 2 �� katmandan olu�ur:
  1. SSH Ula��m Katman� Protokol� (SSH-TRANS)
  2. SSH Yetki Protokol� (SSH-AUTH)
  3. SSH (Ba�lant� Protokol� (SSH_CONN)
Her protokol katman�, IETF ile normalle�tirilmi� d�k�manlarda tan�mlanm��t�r.Yap�y� a��klayan d�rt d�k�man vard�r.Bunlar� http://www.ietf.org/html.charters/secsh-charter.html
Detaylara girmeden SSHv2'de neler var bir bakal�m: SSH s�r�m 1 ve 2 aras�ndak� teknik farklar �unlard�r:


SSH s�r�m 1 SSH s�r�m 2
Monolitik ( b�t�nle�ik ) dizayn Yetkilendirmeyi, ula��m� ve ba�lant�y� katmanlara ay�rma
CRC32 arac�l��� ile b�t�nle�me (g�venli de�il) HMAC (hash �ifrelemesi) ile �ifreleme
Her oturum i�in yaln�z bir oturum Her oturum i�in s�n�rs�z oturum say�s�
Sadece simetrik gizli sistem ile anla�ma, her iki tarafta yaln�z bir anahtar ile tan�mlama Daha ayr�nt�l� anla�ma ( simerik gizli sistem, a��k nahtar, s�k��t�rma, ...) ve ayr� oturum anahtarlar�, her iki tarafta s�k��t�rma ve b�t�nle�me
A��k anahtar i�in sadece RSA algoritmas� A��k anahtar i�in RSA ve DSA algoritmalar�
�stemci taraf�ndan g�nderilen oturum anahtar� Oturum anahtar� i�in Diffle-Hellman protokol� arac�l���yla anla�ma
Oturum anahtar� b�t�n oturum boyunca ge�erli Yenilenebilir oturum anahtar�
 

Bir S�r� Anahtar ile U�ra�ma

SSH anahtar t�rlerini h�zl�ca a��klayal�m: Kullan�c�, yukar�daki anahtarlar�n gizli anahtar k�sm�n� koruyan bir ge�i�deyimi(passphrase) atar.Bu koruma gizli anahtar� i�eren dosyan� simetrik algoritmayla �ifrelenmesiyle garantilenir.Bu dosyay� �ifreleyen gizli anahtar, ge�i�deyiminden t�retilir.
 

Yetkilendirme Y�ntemleri

Bir�ok kullan�c� yetkilendirme y�ntemi vard�r.Se�im, g�venlik politikalar�nda tan�mlanan gereksinilere g�re yap�l�r.Burada temel kategoriler bulunmaktad�r: Yetkilendirmeyi ilgilendiren bir ka� elemana g�z atal�m:  

�ifreleme Algoritmalar�

�imdi, ileti�im kanal�n� �ifreleme (sakl� anahtar kullanarak) ve kullan�c� yetkilendirme (a��k anahtar ile �ifreleme) aras�ndaki fark� anlatal�m.
Yetkilendirme i�in, s�r�m 2 i�in RSA'y� veya DSA'y� se�ebiliriz ve s�r�m 1 i�in sadece RSA'y� se�ebiliriz.Tarihsel olarak,baz� �lkelerde RSA patentli oldu�undan DSA kullan�lacakt�.2000 y�l�n�n yaz� sonunda RSA'n�n kullan�m� serbestle�tive k�s�t ortadan kalkm�� oldu.Hangisinin iyi hangisinin k�t� oldu�un hakk�nda bir fikrim yok (yaln�zca DSA, "saf" NSA �r�n�d�r).
Simetrik �ifreleme i�in, bir�ok se�enek vard�r.Protokol, tek bir ortak algoritma kullanmaya zorlar:�� anahtarl� ��l�-DES.E�er sunucu ve i�temci a�lant� kuramazlarsa bu y�ntemi kullan�rlar.3DES, en az peformansl� algoritma oldu�undan, �nce daha iyi bir algoritma kullanmay� denerler.Baz� gereksiz ve eski (arc4,DES,RC4...) algoritmalar� bir kenar koyup �unlarla kendmizi s�n�rlayaca��z: Protokol�n "�zel bir algoritma" kullanmaya izinvermise kar��l�k neden bu kadar �ok algoritma oldu�unu anlamam���md�r.Sence, zamanlan, AES standart olacakt�r.
 

Port Y�nlendirme, T�neller

SSH, SSH oturumunda her TCP veri ak���n�n y�nlendirmesini "t�nel" arac�l���yla yapabilir.Veri ak���n�, istemci ve sunucu portlar�n� y�netmek yerine, ba�lant� s�ras�nda olu�turuluan t�nel ile yapar (takip eden diyagrama bak�n�z).
X11 protokol� i�in fazladan g�� harcamadan yap�l�r.
Di�re ak��lar i�in, her ikli tarafta komut sat�r� se�enekleri vard�r: SSH'in bu �zelli�i bazen "zavall�lar i�in t�nel" diye adland�r�l�r.Buradaki zavall�l���n anlam�, istemci taraf�nda y�netim yapamakt�r.Sacede belirli durumlarda yerel portlar (port > 1024) �ok az haklarla y�nlendirilebilir.Di�er y�nden, baz� haklar verilmi� prot y�nlendirme yapmak i�in root hesab�na ya da root haklar�na sahip bir kullan�c� olmak gerekir.
IP ile oldu�u gibi, her�eyi her�eyin i�ine koymak m�mk�nd�r.Sadece TCP ak���n� de�il, PPP ba�lant�s�n� da y�nlendirebilirsiniz.Bu IP i�inde "ger�ek" IP t�neli yapmam�za izin verir (�ifrelenmi� oldu�undan g�venlidir).Konu, bu makalenin s�n�rlar�n a�ar, ayr�nt�l� bilgi i�in Linux VPN-HOWTO yaz�s�n� okyabilirsiniz.
�lk ak�lda tutulacak �ey telnet ak���n� y�nlendirmek:Bu gereksiz g�r�nebilir, SSH zaten telneh yerine bir ba�lant� sunuyor.Bu y�ntemle istenilen istemciye ula�labilir ��nk� SSH, Windowstm ve MacOS tm gibi ortamlarda �al��m�yor olabilir.�rne�in,"Mindterm"'�n "terminal em�lasyonu" (Java'n�n SSH istemcisi, b�t�n modern sistemlerde �al���r) Java'n�n performans d��kl���nden yak�n�r:Bu istemciyi sadece SSH t�neli olu�turmak i�in kullanabilirsiniz.
Ayn� �ekilde, "xterm" gibi ( �rne�in SSH'in otomatik X11 y�nlendirmesi kullanarak) uzak bir istemci ba�latarak, SSH'i X terminallerde kullanabilirsiniz.
T�nel, veri ak��� -veriyi t�neli ba�latan ki�i g�ndermiyor olsa bile- oldu�u s�rece a��k kal�r.Bu y�zden "sleep" komutu yeni TCP ba�lant�s�n� y�nlendiren SSH t�neli a�arken yararl� olur.

% ssh -n -f -L 2323:serveur.org:23 serveur.org sleep 60

% telnet localhost 2323

... welcome to serveur.org ...
�lk komut bir t�nel a�ar, sunucuda sleep 60 komutunu �al��t�r�r ve yerel 2323. portu uzaktaki 23. porta (telnet) y�nlendirir.�kinci komut, yerel 2323. portta telne istemcisi �al��t�r�r ve sunucuya ba�lan�rken
�ifrelenmi� t�neli kullan�r.Sleep komutu birdakika sonra duracakt�r.Telnet komutunu �al��t�rabilmek i�in sadece bir dakikan�z var.Ama t�nel son istemci i�ini bitirene kadar a��k kalacakt�r.

 

Ana Da��t�mlar: �cretsiz olanlar

Farkl� platformda farkl� sunucu ve/veya istemci kullanacaks�n�z ve SSHv1 ile SSHv2 uyumsuzdur.Makalenin sonundaki referansalar di�er uygulamalar� bulman�zda yard�mc� olacakt�r.Buradaki tabloda sadece �cretsiz ve yeterince stabil olanlar vard�r.


�r�n platform protokol link notlar
OpenSSH Unix s�r�m 1 ve 2 www.openssh.com ayr�nt�lar a�a��dad�r
TTSSH Windowstm s�r�m 1 www.zip.com.au/~roca/ttssh.html
Putty Windowstm s�r�m 1 ve 2 www.chiark.greenend.org.uk/~sgtatham/putty sadece beta s�r�m�
Tealnet Windowstm s�r�m 1 ve 2 telneat.lipetsk.ru
SSH secure shell Windowstm s�r�m 1 ve 2 www.ssh.com ticari ama�lar d���nda �cretsiz
NiftytelnetSSH MacOStm s�r�m 1 www.lysator.liu.se/~jonasw/freeware/niftyssh/
MacSSH MacOStm s�r�m 2 www.macssh.com
MindTerm Java s�r�m 1 www.mindbright.se s�r�m 2 ticaridir
MindTerm'�n Java'n�n platformdan ba��ms�z uygulamas�d�r (sadece Jav runtime'a gereksinim vard�r) ve iyi tasarlanm�� WEB taray�c�nda �al��t�rl�bilen bir servlet'dir.Maalesef, bu m�kemmel �r�n�n son s�r�m� ticaridir.
 

OpenSSH

B�y�k ihtimalle unix/linux ortamlar�nda kullan�lan tek da��t�md�r ( s�rekli destek, k�sa cevap s�resi, a��k-kod ve �cretsiz).

OpenSSH'in geli�imi, OpenBSD projesinde Tatu Ylonen'nin orjinal s�r�m ile ba�lad� (SSH 1.2.12).�u an OpenSSH �ser�nde iki grup �al��makta.Biri sadace OpenBSD projesi i�in, di�eri ise di�er da��t�mlar� ��karmak i�in �al���yor.

A��k ve okunabilir kodlar� olmas�na ra�men, beni rahats�z eden iki nokta var:

Bence ( ki yaln�z de�ilim), �okluplotrofm �ifreleme �r�nleri, platform ne olursa olsun kararl� ve sabit olmal�d�r.Hatta paltformun belirli karakteristiklerini de g�z �n�ne almal�d�r.
Di�er rakiplerin �r�nlerinin �ok ve �ekici olamamalar�n� normal kar��lamal�y�z.E�er di�er �r�nleri ele almazsak, OpenSSH en k�t� �r�n.Kodun tekrar tasarlan�f yaz�lmas� toplum i�in daha faydal� olacakt�r.
 

K�t� Haber ...

SSH mucize yaratmaz.O ne i�in yap�ld� ise onu en iyi �ekilde yapar.Daha fazlas� beklenmemelidir.Yetkilendirilmi� ba�lant�lar� korumaz.E�er hesap payla��lm��sa, bir sald�rgan ayn� hesaptan bilgisayar�n�za ba�lanabilir.SSH, di�re pratik ve kolay g�venlik politikalar�yla birlikte m�kemmeldir.E�er biri SSH'i heryerde kullanm�yorsa, potansiyel bir risk olu�turur.Bir sald�rgan bu �ifreyi kullanup SSH ile ba�lant� kurarsa hi�bir �ekilde iz b�rakmayacat�r.
Sald�rganlara kap�lar a�acak olan SSH deamonlar�n�n sebep olaca�� tehlikelerin ki�ileri endi�elenmemesi gerekir:IP'de her�eyi her�eyin i�ine koymak m�mk�n.Firewall arac�l���yla �nemli protokollerin uygunsuzlu�unu da i�erir: HTML t�nelleri, ICMP t�nelleri, DNS t�nelleri...E�er %100 g�venlik istiyorsan�z, bilgisayar�n�z� a�may�n.SSH, kullan�m�ndan kaynaklanan baz� "delik"leri vard�r (m�kemmle program olmad���ndan baz�lar� ge�mi�te d�zeltilmi�tir).Baz�lar� da protokolden kaynaklanmaktad�r.Bu "delik"ler -baz�lar�n�n �ok �nemli olduklar� bildirilmi�se de- d�zeltilmesi teknik olarak karma��k olan zay�fl�klard�r.SSH kullan�larak ka��n�lan g�venlik kazalar� g�nl�kt�r ve SSH'in zay�fl�l���ndan kaynaklananlar bazen teoriktir.�u yaz�y� okumak ingin� olacakt�r: http://www.hsc.fr/ressources/presentations/mitm/index.html . Bununla birlikte y�ksek g�venlik isteyen uygulamalar (bankac�l�k, askeriye..) baz� potansiyel a��klar� g�z �n�ne almal�d�rlar.  

Sonu�

Giri�te yazd���m� tekrarlyaca��m:SSH, ne mucizeler yarat�r ne de tek ba��na b�t�n g�venli�i sa�lar.Ama temel ba�lanma yolar�ndan (telnet, rsh...) daah iyidir.
 

�nemli Linkler

�lk iki kita SSHv1 ve v2'yi kapsar. E�er harcayacak paran�z varsa, iyi bir ba�lang��...  

Korunan Kanal� K�t�ye Kullanmak (SSHv1'deki rastgle padding kullan�larak yap�lm��)

Burada, SSHv1'de (ve v2'de) rastgele padding kullan�larak yap�lm�� bir korunan kanal� nas�l kald�raca��m�z� a��klaya��z.Pranoyaklar� etkileyecek kalp krizlerinde sorumlu de�ilim.
SSHv1'in paketleri �u yap�dad�r:
offset

(byte)

isim uzunluk
(bytes)
tan�mlama
0 boyut 4 paket boyutu,padding'siz alan boyutu,yani
boyut=uzunluk(tip)+uzunluk(veri)+uzunluk(CRC)
4 padding p =1 to 8 rastgele padding: boyut sekizin kat� olacak �ekilde ayarlan�r
4+p tip 1 paket tipi
5+p veri n (de�i�ken >= 0)
5+p+n do�rulama 4 CRC32

Sadece bir alan �ifrelenmez: boyut.�ifrelen k�sm�n uzunlu�u, paddingler kullan�larak daima sekizin kat� yap�l�r.Paddingler daima kullan�l�r.E�er son �� alan�n boyutu sekizin kat� ise 8 byte uzunlu�unda padding kullan�l�r ( 5+p+n, mod�l 8'e g�re kalan 0'd�r).�ifreleme fonksiyonu C, simetrik ve CBC modunda olsun ve de�ifreleme fonksiyonu C-1 olsun.Kolay olsun diye sadece 8 byte paddingli paketleri alaca��z.Bir paket geldi�inde, onu rastegele say� ile padding yapmak yerine, C-1(M) de�erini yerle�tirece�iz.M mesaj�n� C fonksiyonuyla de�ifre etmek ile kanal� �ifrelemek ayn� anlamdad�r (asl�nda Mnin �ifrelenmeden de�ifre edilmesi matematiksel a��dan bi anlan i�ermez, ama pratik kullan�mda bu konun detaylar�na inmeyece�im).Sonra paketin di�re i�lemlerine devam ederiz, yani 8 bytel�k �ifreleme.

Sonu� �u olacakt�r:


offset i�erik
notlar
0 boyut
4 byte �ifrelenmedi
4 8 byte padding (�ifrelenmi�) yani C(C-1 (M))
12... son tip,veri,CRC


Burada ilgin� olan ne?�lk �ifrelenmi� blok C(C-1(M))'i i�erir. C simetrik �ifreleme fonksiyonu oldu�undan C(C-1(M)) =M
dir.�lk blok, �ifrelenmi� veride de�ifrelenmi� olarak g�nderilir.Bunun anlam�, a� �zerinde ileti�imi dinleyebilen biri bilgileri nas�l kullanaca��n� bilir.
��l�-DES(168 bit) oturumunda, bu tip paketlerin say�s� ��t�r.Bu bilgilerle bir a� dinleyicisi b�t�n ileti�imi de�ifre edebilir.Anahtar g�nderildi�inde, paddingleri pakete sokmadan �nce "�n-�ifreleme"ye art�k gerek kalmz.E�er biri daha �ok bilgi eklemek isterse, herhangi boyutta padding kullanmas� m�mk�nd�r.
Bu korunmu� kanal�n kullan�m�n�n bulunmas� asla m�mk�n de�ildir! Daha �nce de belirti�im gibi iletinin her eleman� �ifrelerken dikkatl� olunmal�d�r.Bulunamaz ��nk� paddingler rastgeledir, do�ruluk testini kullanamazs�n�z. �ifreleme �r�nlerinde asla rastgele paddingler kullanmay�n�z.
Bu kanal� di�erlerinde daha tehlikeli yapan �ey, SSH_MSG_IGNORE gibi �ifrelenmi� anahtar bilgisin sahip olmadan kullanabilece�iniz iletilerdir.
Rastgele paddinglerin k�t� etkilerinden korunmak i�in, kararl� paddingler kullan�lmal�d�r: genellikle " kendini tan�mlayan paddingler" denir ve n. offset byte'� n'i i�erir.Rasgele paddingler, SSHv2'de vard�r.Bir �e�imdir.
Sonu� olarak,burada sadece korunmu� kanal� ele�tirdim.��nk� SSH gibi �ok g�venli oldu�unu iddia eden bir �r�n�n ger�ekten en �st d�zeyde g�venlik sunmas� gerekir. Art�k ticari �r�nlerin bir �ok a��k i�erdiklerini biliyorsunuz:Sadece a��k-kod �r�nleri birincil gereksinime izin verir.O da kodun incelenmesi ve bu incelem ger�ekten gereklidir.

 

Bu yaz� i�in g�r�� bildiriminde bulunabilirsiniz

Her yaz� kendi g�r�� bildirim sayfas�na sahiptir. Bu sayfaya yorumlar�n�z� yazabilir ve di�er okuyucular�n yorumlar�na bakabilirsiniz.
 talkback page 

G�rsely�re sayfalar�n�n bak�m�, LinuxFocus Edit�rleri taraf�ndan yap�lmaktad�r
© Bernard Perrot, FDL
LinuxFocus.org
�eviri bilgisi:
fr --> -- : Bernard Perrot <bernard.perrot%28at%29univ-rennes1.fr>
en --> tr: �zcan G�ng�r <ozcangungor%28at%29netscape.net>

2003-02-04, generated by lfparser version 2.35