Merhaba dostlar… Bu yazımızda bir internet güvenlik protokolü olan (Secure Shell) SSH nedir, nasıl kullanılır, temel SSH komutları nelerdir öğreneceğiz.
SSH Nedir ?
SSH, SSH Communications Securtiy tarafından geliştirilmiş bir güvenli bağlantı protokolüdür. SSH, veya Secure Shell, kullanıcılara sunucularını internet üzerinden kontrol etmesini ve düzenlemesini sağlayan uzak yönetim protokolüdür. TELNET protokolü de bu işi yapıyor fakat TELNET şifresiz SSH şifreli olarak çalışır. Yani bir sunucuya bağlantı yaparken kullanıcı adı ve şifreler açık metin olarak değil şifrelenmiş olarak iletilir.
SSH istemcisi sayesinde belirli komutları kullanarak uzaktan güvenli bağlantı gerçekleştirebilir, dosya transfer edebilir, telnet metotlarını uygulayabilirsiniz. Bu protokolü kullanabilmek için küçük boyutlu bir DOS yazılımına ihtiyaç duyulmaktadır. Bu yazılımın ismi Putty’dir.
SSH kavramı komut işlemleri için “Secure Shell Client” ve dosya transferleri için “Secure File Transfer Client” yapılarını bünyesinde bulundurur. Bu sayede SSH uzaktaki bir makinada oturum açabilir ve komut istekleriyle makinanın yönetimini gerçekleştirebilir.
SSH Nasıl Çalışır ?
Uzak veya local cihazda SSH kullanımının gerçekleştirilebilmesi için, cihazda “openshh”ın kurulu olması gerekmektedir. Genelde birçok unix işletim sistemi openssh servisini kurulu halde son kullanıcıya sunar. Unix ve SSH kullanıcıları, uzak cihazın yönetimini gerçekleştirebilmek için en çok PUTTY programını tercih etmektedir.
SH, private ve public key olmak üzere 2 adet anahtar üzerinden çalışmaktadır. Bu anahtarlardan public key verileri şifreleyecek ve güvenli erişim talebinizi doğrulayacak şekilde, uzaktan erişim sağlamak istediğiniz sunucuya yerleştirilmektedir. Private Key ise şifrelenmiş verileri çözmek üzere istemci tarafında bulundurulan ve gizliliğine oldukça önem verilmesi gereken anahtardır.
Anahtar tabanlı kimlik doğrulamanın en temel kullanımı, otomasyonu güvenli hale getirmektir. Otomasyonu sağlanmış SSH ile dosya aktarımları ve uygulamalar sorunsuz bir şekilde entegre edilebilmekte ve konfigürasyon yönetimi kolaylıkla gerçekleştirilebilmektedir.
SSH Komutları Nelerdir?
cd komutu: Bu komut ile klasörler arasında geçiş yapabilirsiniz. Örnek verecek olursak “cd klasör adı” komutuyla ilgili dizine girebileceğiniz gibi “cd klasör adı/klasör adı” şeklinde kullanarak alt dizinlere de geçiş yapabilirsiniz.
pwd komutu: Bu komut ile o an bulunduğunuz klasörü ekrana yazdırabilirsiniz.
mkdir komutu: Bu komut ile o an bulunduğunuz dizine yeni bir diniz ekleyebilirsiniz. Örnek verecek olursak “mkdir klasör adı” şeklinde gösterebilirim.
ls komutu: Bu komut ile o an bulunduğunuz klasörde bulunan tüm dosya ve klasörlerin ekrana yazdırılmasını sağlayabilirsiniz. Daha detaylı bir liste için ise “man ls” komutunu kullanabilirsiniz.
who komutu: Bu komut ile sunucu içerisinde o an bağlı olan kullanıcıları ekrana yazdırabilirsiniz.
rm komutu: Bu komut ise dosya ve klasörleri silme işlemi için uygulanmaktadır. Örnek verecek olursak “rm klasör adı” ya da “rm dosya adı uzantısı” şeklinde gösterebilirim. Rm için daha fazla bilgi almak için ise “man rm” komutunu kullanarak yardım penceresine ulaşabilirsiniz.
nano komutu: Bu komut ile dosyalarda gerekli düzenlemeleri yapabilirsiniz. Örnek verecek olursak bir metin belgesini düzenlemek için “nano /klasör adı/metin belgesi.txt” komutunu kullanmanız gereklidir.
ps komutu: Bu komut ile sunucu içerisinde çalışan yazılımları görebilirsiniz. Bu komut ile yapabileceğiniz diğer işlemleri öğrenmek için ise “man ps” komutunu kullanabilirsiniz.
ps aux komutu: Bu komut ile istediğiniz servisin PID numarasını öğrenebilirsiniz.
service komutu: Bu komut ile sunucu içerisinde çalışan servisleri durdurup tekrar başlatabilir, durum kontrolü yapabilirsiniz. Örnek verecek olursak “service restart (Servis Adı)” şeklinde bir sorgu ile istenilen servisin kapatılıp baştan başlatılmasını sağlayabilirsiniz.
kill komutu: Bu komut ile istediğiniz bir yazılım PID numarasını kullanarak ilgili yazılımın kapanmasını sağlayabilirsiniz.
kill all komutu: Bu komut ile PID numarasıyla belirttiğiniz yazılımın yanında tüm yazılımları kapatabilirsiniz.
df komutu: Bu komut sunucunuzun bulunduğu diskin doluluk oranını öğrenmenizi sağlamaktadır. Bu komutu “df –h” parametresi ile kullanırsanız disklerin MB, GB ve TB cinsinden görüntülenmesini de sağlayabilirsiniz.
scp komutu: SFTP yardımıyla veri aktarımı gerçekleştirmeyi ve farklı bir SSH istemcisi üzerinden komutları göndermenizi sağlar.
ftp komutu: FTP bağlantısı sağlamanızı ve gerekli FTP işlerini yapmanızı sağlamaktadır.