SSH bir konsolda çalışan bir ağ protokolüdür. En yaygın kullanılan SSH istemcisi PuTTy'dir. Aşağıdaki resim, kurulmuş bir SSH oturumunu göstermektedir. Kullanımı kolay ve hızlıdır. Çoğu BT Uzmanı, güvenlik nedeniyle tüm ağı yalnızca SSH aracılığıyla yönetir ve sunucuda yönetim ve yönetim görevlerini gerçekleştirmek için hızlı / kolay erişim sağlar. SSH'deki tüm oturum şifrelenir - SSH için başlıca protokoller SSH1 / SSH-1 ve SSH2 / SSH-2'dir. SSH-2 ikincisi, SSH-1'den daha güvenli. Bir Linux OS, konsola erişmek için Terminal adında yerleşik bir yardımcı programa sahiptir ve bir Windows makinesi bir SSH İstemcisi (örn. PuTTy) gerektirir.
SSH Kullanarak Uzak Bir Ana Makineye Erişim
SSH kullanarak uzak bir ana bilgisayara / makineye erişmek için aşağıdakilere sahip olmanız gerekir:
için) PuTTy (Ücretsiz SSH İstemcisi)
b) SSH Sunucusu Kullanıcı Adı
c) SSH Sunucu Şifresi
d) SSH Bağlantı Noktası bu genellikle 22'dir, ancak 22 varsayılan olduğundan, bu bağlantı noktasına saldırıları önlemek için farklı bir bağlantı noktasıyla değiştirilmelidir.
Bir Linux Makinesinde, kullanıcı adı kökü varsayılan olarak yöneticidir ve tüm yönetici haklarını içerir.
Terminal'de, aşağıdaki komut sunucuya bir bağlantı başlatacaktır.
ssh root@192.168.1.1
burada, kök kullanıcı adı ve 192.168.1.1 ana bilgisayar adresidir
Terminal şu şekilde görünüyor:
Komutlarınız sonra yazılacaktır. $ simgesi . Terminal / putty'deki herhangi bir komutla ilgili yardım için sözdizimini kullanın:
adam ssh
adam komutu
adam, ardından herhangi bir komut ekranda komut rehberliğine dönecektir
Şimdi yapacağım şey, PuTTy'yi kullanarak VMWare üzerinde çalışan Debian işletim sistemime SSH kullanmak.
Ancak bunu yapmadan önce, VM Debian'ıma giriş yaparak SSH'yi etkinleştirmem gerekiyor - Bir barındırma şirketinden yeni bir sunucu satın aldıysanız, onlardan sizin için SSH'yi etkinleştirmelerini isteyebilirsiniz.
Ssh'yi etkinleştirmek için kullanın
sudo /etc/init.d/ssh yeniden başlatma
Ubuntu kullandığımdan ve ssh kurulmadığından
Ssh yüklemek için bu komutları kullanın
sudo apt-get install openssh-istemcisi
sudo apt-get install openssh-server
Ve PuTTy aracılığıyla SSH'ye giriş yaptım:
Şimdi SSH'yi kurmak ve PuTTy aracılığıyla bir oturum kurmak için gereken şey bu - Aşağıda, tüm senaryonun daha büyük bir görünümünü size yavaş yavaş vermeye başlayacak bazı temel gelişmiş özellikleri ele alacağım.
Varsayılan ssh yapılandırma dosyası şurada bulunur: / etc / ssh / sshd_config
Yapılandırma dosyasını görüntülemek için şunu kullanın: cat / etc / ssh / sshd_config
Yapılandırma dosyasını düzenlemek için şunu kullanın: vi / etc / ssh / sshd_config veya nano / etc / ssh / sshd_config
Herhangi bir dosyayı düzenledikten sonra CTRL + X ve kaydetmek ve çıkmak için Y tuşuna basın (nano düzenleyici)
SSH bağlantı noktası yapılandırma dosyasından değiştirilebilir, varsayılan bağlantı noktası 22'dir. Temel komutlar, cat, vi ve nano diğer şeyler için de çalışacaktır. Özellikle komutlar hakkında daha fazla bilgi edinmek için, Google Arama'yı kullanın.
Herhangi bir yapılandırma dosyasında herhangi bir değişiklik yaparsanız, o hizmet için yeniden başlatma gerekir. Daha da ileri gidersek, şimdi bağlantı noktamızı değiştirmek istediğimizi varsayalım, bu yüzden yapacağımız şey sshd_config dosyasını düzenlemek ve
nano / etc / ssh / sshd_config
Yönetici olarak giriş yapmalı veya kullanmalısınız sudo nano / etc / ssh / sshd_config dosyayı düzenlemek için. Düzenlendikten sonra ssh hizmetini yeniden başlatın, sudo /etc/init.d/ssh yeniden başlatma
Bir bağlantı noktasını değiştiriyorsanız, varsayılan güvenlik duvarını kullanıyorsanız IPTABLES'ınızda buna izin verdiğinizden emin olun.
iptables -I GİRİŞ -p tcp –dport 5000 -j KABUL/etc/rc.d/init.d/iptables kaydetme
Bağlantı noktasının açık olup olmadığını onaylamak için iptables'ı sorgulayın
iptables -nL | grep 5000
Yapılandırma dosyasında daha önce tartışıldığı gibi birkaç yönerge vardır, SSH için iki protokol vardır (1 & 2). 1 olarak ayarlanmışsa, 2 olarak değiştirin.
Aşağıda yapılandırma dosyamın bir kısmı var:
# Paket tarafından oluşturulan yapılandırma dosyası
# Ayrıntılar için sshd_config (5) kılavuz sayfasına bakın
# Hangi bağlantı noktalarını, IP'leri ve protokolleri dinliyoruz
5000 numaralı bağlantı noktası 22 numara bağlantı noktasıyla değiştirildi
# Sshd'nin hangi arayüzlere / protokollere bağlanacağını kısıtlamak için bu seçenekleri kullanın
#ListenAddress ::
#ListenAddress 0.0.0.0
Protokol 2 protokol 1'i 2 ile değiştirdi
değişiklikleri yaptıktan sonra hizmeti yeniden başlatmayı unutmayın
Root, yöneticidir ve devre dışı bırakılması önerilir, aksi takdirde uzak bağlantılara açıksanız, bir kaba kuvvet saldırısına veya diğer ssh güvenlik açıklarına maruz kalabilirsiniz - Linux sunucuları, bilgisayar korsanları tarafından en çok sevilen kutulardır. direktif LoginGraceTime , kullanıcının oturum açması ve kimlik doğrulaması yapması için bir zaman sınırı belirler, kullanıcı kapatmazsa bağlantı kapanır - bunu varsayılan olarak bırakın.
# Kimlik Doğrulama:
Oturum AçmaGraceTime 120
PermitRootLogin hayır
StrictModes evet
Süper harika bir özellik, Anahtar kimlik doğrulaması (PubkeyAuthentication) - Bu özellik, Amazon EC3 sunucularında gördüğümüz gibi yalnızca anahtar tabanlı kimlik doğrulaması kurmanıza olanak tanır. Sunucuya yalnızca özel anahtarınızı kullanarak erişebilirsiniz, oldukça güvenlidir. Bunun çalışması için, bir anahtar çifti oluşturmanız ve bu özel anahtarı uzak makinenize eklemeniz ve bu anahtar kullanılarak erişilebilmesi için genel anahtarı sunucuya eklemeniz gerekir.
PubkeyAuthentication evet
AuthorizedKeysFile .ssh / yetkili_keys
RSA Kimlik Doğrulaması evet
Şifre Doğrulama no
Bu, herhangi bir parolayı reddedecek ve kullanıcıların yalnızca bir anahtarla erişmesine izin verecektir.
Profesyonel bir ağda, genellikle kullanıcılarınıza ne yapmalarına izin verildiğini ve neyin yapılmadığını ve diğer gerekli bilgileri bildirirsiniz.
Başlıklar için düzenlenecek yapılandırma dosyası: / etc / motd
Dosyayı düzenleyicide açmak için şunu yazın: nano / etc / motd veya sudo / etc / motd
Not defterinde yaptığınız gibi dosyayı düzenleyin.
Ayrıca başlığı bir dosyaya yerleştirebilir ve / etc / motd dosyasında referans verebilirsiniz.
Örneğin: nano banner.txt bir banner.txt dosyası oluşturacak ve düzenleyiciyi hemen açacaktır.
Başlığı düzenleyin ve kaydetmek için ctrl + x / y. Daha sonra motd dosyasında şunu kullanarak referans verin:
Banner /home/users/appualscom/banner.txt VEYA ne olursa olsun, dosya yolu.
Aynı başlık gibi, oturum açma isteminden önce de bir mesaj ekleyebilirsiniz, düzenleme dosyası / etc / issue
SSH Tünelleme
SSH Tünelleme, trafiği yerel makinenizden uzaktaki bir makineye tünellemenize olanak tanır. SSH protokolleri aracılığıyla oluşturulur ve şifrelenir. Şu makaleye göz atın: SSH Tünelleme
SSH Tüneli Üzerinden Grafik Oturum
Aşağıdaki satırı açıklamayı kaldırarak grafik / gui oturumunu etkinleştirinX11 Yönlendirme evet
Müşterinin sonunda komut şöyle olacaktır:
ssh -X root@10.10.10.111
Basit komutlar kullanarak firefox gibi bir program çalıştırabilirsiniz:
firefox
Bir görüntüleme hatası alırsanız, adresi ayarlayın:
dışa aktarma EKRANI = Makinenin IPadresi: 0.0
TCP Sarmalayıcılar
Seçili ana bilgisayarlara izin vermek ve bazılarını reddetmek istiyorsanız, düzenlemeniz gereken dosyalar bunlar
1. /etc/hosts.allow
2. /etc/hosts.deny
Birkaç ana bilgisayara izin vermek için
sshd: 10.10.10.111
Herkesin sunucunuza sshing yapmasını engellemek için /etc/hosts.deny içine aşağıdaki satırı ekleyin
sshd: TÜM
SCP - Güvenli Kopyalama
SCP - güvenli kopya bir dosya aktarım aracıdır. Dosyaları ssh üzerinden kopyalamak / aktarmak için aşağıdaki komutu kullanmanız gerekecektir.
Aşağıdaki komut, dosyamı 10.10.10.111'de / home / user2'ye kopyalayacak
scp / home / kullanıcı / dosyam kök@10.10.10.111: / ev / kullanıcı2
scp kaynak hedef sözdizimi
Bir klasörü kopyalamak için
scp –r / home / kullanıcı / klasörüm roor@10.10.10.111: / home / kullanıcı2
Uzak Bir Makinede Dosyaları Arama
Uzak bir makinede dosya aramak ve sisteminizdeki çıktıyı görüntülemek çok kolaydır. Uzak makinede dosyaları aramak için
ssh root@10.10.10.111 “find / home / user –name‘ * .jpg ’”Komut, tüm * .jpg dosyalarını / home / user dizininde arayacaktır, onunla oynayabilirsiniz. find / -name, / root dizininin tamamını arayacaktır.
SSH Ek Güvenlik
iptables, zamana dayalı sınırlamalar belirlemenize olanak tanır. Aşağıdaki komutlar, kimlik doğrulaması başarısız olursa kullanıcıyı 120 saniye boyunca engelleyecektir. Periyodu belirtmek için komutta / saniye / saat / dakika veya / gün parametresini kullanabilirsiniz.
Zamana Dayalı Sınırlariptables -A GİRİŞ -p tcp -m durum –syn –durum YENİ –dport 22 -m limit –sınır 120 / saniye –sınır-çoğuşma 1 -j KABUL
iptables -A GİRİŞ -p tcp -m durum –syn –durum YENİ –dport 5000 -j DÜŞME
5000 bağlantı noktasıdır, ayarlarınıza göre değiştirin .
Belirli bir IP'den kimlik doğrulamaya izin verme
iptables -A GİRİŞ -p tcp -m durum –devlet YENİ –kaynak 10.10.10.111 –dport 22 -j KABUL
Diğer kullanışlı komutlar
SSH üzerinden bir ekran ekleyin
ssh -t root@10.10.10.111 ekran –r
SSH Aktarım Hızı Kontrolü
evet | pv | ssh $root@10.10.10.111 'cat> / dev / null'