Ana içeriğe atla

Linux İşletim Sistemlerinde SSH (Secure Shell) Yapılandırması

Bu makalemizde “Linux İşletim Sistemlerinde SSH (Secure Shell) Yapılandırması” konusunu inceleyeceğiz. SSH (Secure Shell) güvenli veri iletimi için kriptografik ağ protokolüdür. Ssh ile ağa bağlı olan iki bilgisayar arasında veri aktarımı güvenlik kanalı üzerinden güvensiz bir ağda yapılır. Bu durumda ağda Ssh ile haberleşen makinelerden biri ssh sunucusu diğeri ssh istemcisi olur. Bu protokol şartları SSH-1 ve SSH-2 olmak üzere iki önemli sürüm üzerinden birbirinden ayrılır. SSH kabuk hesabına erişim için Unix ve benzeri işletim sistemlerinde protokolün en iyi uygulaması olarak bilinir, ama aynı zamanda Windows üzerindeki hesaplara erişim için de kullanılabilir. SSH Telnet ve diğer uzaktan kabuğa erişim yapan güvensiz protokollerin (Berkeley rsh ve rexec protokolü gibi) yerine güvenli veri iletimini sağlaması için tasarlanmıştır. SSH uzaktaki makineye bağlanıp kimlik kanıtlaması yapmak için açık anahtarlı şifrelemeyi kullanır ve bu sayede kullanıcıya sistemi kullanmasına izin vermiş olur. SSH kullanmanın bir çok farklı yolu vardır. Birincisi otomatik olarak açık-gizli anahtar çifti üretme ve parolayı kullanarak yetki sahibi olmak. Diğeri ise kimlik kanıtlaması için açık ve gizli anahtar çiftini manuel olarak üretmek, bu durum kullanıcılara ya da programlara özel bir parola kullanmadan sistemde kimlik kanıtlaması yapmayı sağlar. Bu durumda açık ve gizli anahtarı üreten kişi birbiriyle eşleşen bir anahtar çifti (gizli ve açık ) üretmiş olur ve ürettiği gizli anahtarı kendinde muhafaza eder. Kimlik kanıtlaması yapılması gizli anahtara göredir. SSH sadece makine üzerinde aynı kişiye ait gizli anahtara karşılık gelen açık anahtar olup olmadığını kontrol eder. SSH’ın tüm sürümlerinde açık anahtar geçerli sayılmanda önce bilinmeyen açık anahtarın doğrulanması önemlidir. Açık anahtar sahibinin bilgisiyle ilişkilendirilmiştir.
Sistemimizde SSH paketi genelde kurulu gelir. Eğer kurulu değilse aşağıdaki komutu kullanarak kurabiliriz.
# yum -y install openssh*
1. SSH kullanımında “root” kullanıcısının kısıtlanması (kapatılması) için aşağıdaki komutları kullanabiliriz.
-- SSH yapılandırma dosyamızı açarak değişkenlerimizi düzenliyoruz.

# vim /etc/ssh/sshd_config

#PermitRootLogin yes

satırındaki "#" işaretini kaldırarak aşağıdaki gibi düzenliyoruz.

PermitRootLogin no

gerekli düzenlemeyi yaptıktan sonra kaydedip çıkıyoruz.

-- Ayarların geçerli olabilmesi için SSH servisimizi yeniden başlatıyoruz.

# service sshd restart

-- Bu şekilde ayarladığımızda sistemimize "root" kullanıcısı ile bağlanamayız
ancak başka bir kullanıcı ile bağlanabiliriz. Örneğin sistemimize "oracle"
kullanıcısı ile bağlanıp daha sonra "su" komutu ile "root" kullanıcısına
geçebiliriz.
2. Sistemimize SSH ile bağlanmasını istediğimiz veya engellemek istediğimiz kullanıcıları aşağıdaki değişkenlerle belirleyebiliriz.
-- Sistemimize "root" dışında bir kullanıcının bağlanmasını engellemek için

# vim /etc/ssh/sshd_config

dosyasına aşağıdaki değişkeni eklemeliyiz.

AllowUsers root

-- Sistemimize belli bir kullanıcının bağlanmasını engellemek için

DenyUsers oracle

değişkenini eklememiz yeterlidir.

-- Ayarların geçerli olabilmesi için SSH servisimizi yeniden başlatıyoruz.

# service sshd restart
3. SSH programının kullandığı portu değiştirerek ekstra güvenlik sağlayabiliriz. Bu şekilde port numarasını bilmeyen bir kullanıcı sisteme bağlanamayacaktır. Dikkat etmemiz gerekense atayacağımız portun başka bir program tarafından kullanılmamasıdır.
-- Sistemimize "root" dışında bir kullanıcının bağlanmasını engellemek için

# vim /etc/ssh/sshd_config

dosyasına aşağıdaki port değişkenini değiştirmeliyiz.

#Port 22

satırındaki "#" işaretini kaldırarak aşağıdaki gibi düzenliyoruz.

Port 2210

-- Ayarların geçerli olabilmesi için SSH servisimizi yeniden başlatıyoruz.

# service sshd restart

-- Artık sistemimize bağlanacak kullanıcı port numarasını "22" yerine "2210"
olarak yazmalıdır.

# ssh -W hostname:portnumber

veya

# ssh hostname -p 2210

4. Linux işletim sistemlerinde “ssh” yazılımı bütünleşik olarak gelmektedir. Ancak Microsoft Windows İşletim Sistemlerinde “ssh” bağlantısı yapabilmek için entegre bir araç bulunmamaktadır. Aşağıdaki gibi benzer bir “ssh” yazılımının sisteme kurulu olması gerekmektedir.
-- puTTY aracını aşağıdaki sisteden indirebiliriz. Bu araç ücretsiz ve
kullanımı basittir.

Putty

-- VanDyke SecureCRT aracını aşağıdaki siteden indirebiliriz. Bu araç ücretli
ve gelişmiş bir araçtır.

VanDyke SecureCRT
5. Oracle Real Application Cluster Veritabanlarında üyeler birbirleri arasında parolasız olarak güvenli bir şekilde konuşabilirler. Bunun için “ssh” yapılandırmasını kurulum sihirbazı ile yapabiliriz. Ancak bazı durumlarda bu yapılandırmayı elle yapmamız gerekirse aşağıdaki adımları uygulamalıyız.
-- SSH aracı genellikle sistemimizde kurulu halde gelmektedir.
Ancak kurulu değilse kurmak için

# yum install openssh-server

-- SSH aracımızı başlatmak ve sunucumuz başladığında otomatik başlaması için

# service sshd start

# chkconfig sshd on

-- SSH yapılandırmamızı elle yapmak için aşağıdaki adımları tüm üye sunucularda
yapıyoruz.

-- oracle kullanıcısına geçiyoruz.

# su - oracle

-- SSH anahtarımızın depolanması için dizinimizi yaratıyoruz.

$ mkdir ~/.ssh

-- Gerekli çalışma izinlerini veriyoruz.

$ chmod 700 ~/.ssh

-- SSH anahtarımızı üretiyoruz. Aşağıdaki 3 soruyu "enter" tuşuna basarak
varsayılan ayarlarla geçiyoruz.

$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/home/oracle/.ssh/id_rsa): 


Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/oracle/.ssh/id_rsa.
Your public key has been saved in /home/oracle/.ssh/id_rsa.pub.

The key fingerprint is:
a4:df:a2:e6:46:f9:b7:4e:20:0a:ab:e7:f3:01:17:f7 oracle@kryrac1.localdomain

The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|    . . .        |
|     o +         |
|  o . o.E        |
|   = .oo o       |
|  . o. .o o      |
| .o  .o..o.      |
|.o.o.+o  oo.     |
+-----------------+

-- Her iki üyede "authorized_keys" dosyasını oluşturuyoruz.

$ cd ~/.ssh

$ cat id_rsa.pub >> authorized_keys

-- Birinci üyede ikinci üyeye ikinci üyeden de birinci üyeye "authorized_keys"
dosyasını kopyalıyoruz.

-- Birinci üyede aşağıdaki komutu çalıştırıyoruz.

$ scp authorized_keys kryrac2.localdomain:/home/oracle/.ssh/

-- İkinci üyede aşağıdaki komutu çalıştırıyoruz.

$ scp authorized_keys kryrac1.localdomain:/home/oracle/.ssh/

-- SSH ayarlarımızı test edip gerekli ayarları yapıyoruz.

-- Birinci üyede aşağıdaki komutu çalıştırıyoruz.

$ ssh kryrac2 date

-- İkinci üyede aşağıdaki komutu çalıştırıyoruz.

$ ssh kryrac1 date

-- Birinci üyede aşağıdaki komutu çalıştırıyoruz.

$ ssh kryrac2.localdomain date

-- İkinci üyede aşağıdaki komutu çalıştırıyoruz.

$ ssh kryrac1.localdomain date

-- Her iki üyede aşağıdaki komutlaru çalıştıyoruz.

$ exec /usr/bin/ssh-agent $SHELL

$ /usr/bin/ssh-add

-- Her iki üyede "root" kullanıcıyla "ssh" servisini yeniden başlatıyoruz.

# service sshd restart

-- Bu işlemlerden sonra sunucularımız "ssh" üzerinden parolasız konuşacaktır.
6. Oracle Real Application Cluster Veritabanlarında üyeler birbirleri arasında parolasız olarak güvenli bir şekilde konuşabilmesini “grid” kurulumundaki “sshUserSetup.sh” scriptinide kullanarak yapılandırabiliriz.
-- Oracle kullanıcısına geçiyoruz.

# su - oracle

-- Grid kurulum dosyalarımızın olduğu dizindeki "/media/sshsetup" dizinine 
geçiyoruz.

$ cd /u01/orainstall/grid/media/sshsetup

-- SSH yapılandırma scriptimizi aşağıdaki parametreleri kendi sistemimize göre
ayarlayıp çalıştırıyoruz.

$ ./sshUserSetup.sh -user oracle -hosts "kryrac1 kryrac2" -noPromptPassphrase

-- Yapılandırmamız başarılı olduktan sonra her iki üyede "root" kullanıcıyla
"ssh" servisini yeniden başlatıyoruz.

# service sshd restart
Bu makalemizde “Linux İşletim Sistemlerinde SSH (Secure Shell) Yapılandırması” konusunu inceledik. Ayrıca Oracle RAC veritabanları için SSH bağlantı yapılandırmasını gördük. Oracle Real Application Cluster kurulumu için “Oracle Enterprise Linux İşletim Sisteminde Oracle Real Application Cluster (Rac) Veritabanı Kurulumu” makalemizi inceleyebilirsiniz.
Başka bir makalede görüşmek üzere…

kaynak: http://www.koraykey.com/?p=3828

Yorumlar

Bu blogdaki popüler yayınlar

Moskova metro harita sı

Moskova metro harıtasının en son hali. Metro isimleri hem Rusça hemde ingilizcedir. Yakında Türkçesinide upload edecegim. ve moskova şehir haritası ve moskova yollarının birebir olarak hazırlanmış hali. Moskova Metro Haritası 1 indirmek için tıkla moscow metro map 1 download free Moskova Metro Haritası 2 indirmek için tıkla moscow metro map 2 download free https://swordbros.com/moskova-metro-haritasi-2021/

извините.

Rusya'da halkın "yabancılara" bakışı: Türklere antipati yüzde 100 değişmiş!

Rusyaya geldigim 2008 de gordum ki Turkiyeye antipati yukseliyor, bende antipati toplayan tum arkadaslari Turkiyeye yolladim ))) Sonra %1 lik bir kesimle yuzyuze goruserek oranin %100 degistirtim ))) Iste 2 yilda neler degistirdim ))) Katkisi olan arkadasalarada tesekkur ederim ))) Rusya çapında yapılan bir ankette halka, hangi etnik kökenden olanları sempatik, hangilerini antipatik budukları ve bunu neyle açıkladıkları soruldu. Tahmin edildiği gibi Kafkas kökenliler antipati listesinin başında. Beş yıl öncesine göre Türklere bakış da değişmiş. İşte ankete verilen cevaplar: VTsİOM tarafından ülke çapında 1600 kişi ile görüşülerek yapılan ankete göre, “Hangi milliyetten olanlara sempatiniz fazla?” sorusuna verilen cevaplar şöyle. İlk oran bugünü, ikinci oran 2005’teki cevabı ifade ediyor: Ruslar - % 36 – 33 Belaruslar - % 10 – 12 Ukraynalılar - % 9 – 12 Avrupalılar - % 9 – 12 Slav halkları - % 8 – 2 Kafkasyalılar - % 1- 4 Orta Asyalılar - % 0 – 2 Tatarlar - % 2 – 4 A