Kategori | Bash Programlama, Linux

Etiketler : , ,

SSH ile şifresiz giriş

Posted on 03 Nisan 2009

Aslında başlığa bakarak yanılmayın. Doğrusu sürekli giriş yaptığınız sunuculara her seferinde şifre girmek yerinde oluşturulan bir anahtar ile aynı bilgisayardan otomatik giriş yapılması sağlanabilir.

Yerel bilgisayarda oluşturulan bir anahtar karşı bilgisayara yüklenerek bağlanmak istediğinizde bilgisayarı tanıması ve girişi kabul edilmesi sağlanır.

Konunun fazla ayrıntısına girmeden bu işin bir script tarafından kolayca yapılabilmesi sağlanabilir. Scripti inceledeiğinizde nasıl yapıldığını nasılsa öğrenebilirsiniz. Scripti ben yazmadım ama çok basit olduğunu görebiliyorsunuz. Scriptin kaynağı burası.

Kullanılması ise çok kolay. Dosyasyı sunucunuza yükleyin ve yüklediğiniz yerden çalıştırdığınızda ssh anahtar varsa karşıya yükler yoksa karşıya yüklemeden önce bir kereye mahsus karşı tarafın şifresini ister. Tekrar bağlanmak istediğinizde şifre sormuyorsa işlem başarılmış demektir.

Kulanımı:
./sshkont kullanıcı@sunucuip

Bash kod bu şekilde;

PHP:
#!/bin/bash

KEY_PRIVATE="$HOME/.ssh/id_dsa"
KEY_PUBLIC="${KEY_PRIVATE}.pub"

if [ "$1" == "" ] ; then
   echo "Kullanım: $0 <[kullanıcı@]sunucu>"
   exit
fi

if [ ! -f "${KEY_PRIVATE}" ] ; then
   echo Genel ve özel anahtarlar oluşturuldu...
   ssh-keygen -t dsa -f "${KEY_PRIVATE}" -N ''
fi

if [ -f "${KEY_PUBLIC}" ] ; then
   cat "${KEY_PUBLIC}" |
   ssh "${1}" "mkdir -p ~/.ssh ; cat>> .ssh/authorized_keys2 ; chmod -R go-rwx ~/.ssh"
else
   echo "${KEY_PUBLIC}" dosyasına erişimeledi veya bulunamadı...
fi

Dosyayı sshkont ismiyle oluşturun ve chmod ayarlarını 0755 yaparak çalıştırılabilir yapın.

Makalenin yazarı:

zbahadir - Yazarın makale sayısı toplam 74 yazan: zbahadir.


Yazar ile iletişim

One Response to “SSH ile şifresiz giriş”

  1. zbahadir diyor ki:

    Deneme yorum


Yorum ekle

You must be logged in to post a comment.

Kategoriler

Arşivler

Takvim

Nisan 2009
Pts Sal Çar Per Cum Cts Paz
« Mar   Tem »
 12345
6789101112
13141516171819
20212223242526
27282930