SSH ve SFTP aracılığıyla sanal bir sunucuya bağlanın. Sunucuya SSH ve SFTP üzerinden bağlanma Putty aracılığıyla ssh üzerinden bağlanma

SSH nedir ve neden buna ihtiyacınız var?

Secure Shell (SSH), uzak bir makineye güvenli bir kanal aracılığıyla kabuk işlevleri sağlayan bir ağ protokolüdür. SSH, kullanıcı/ana bilgisayar kimlik doğrulaması, veri şifreleme ve veri bütünlüğü dahil olmak üzere çeşitli güvenlik geliştirmeleriyle birlikte gelir; bu da gizlice dinleme, DNS/IP sahtekarlığı, veri sahteciliği ve bağlantı ele geçirme gibi popüler saldırıları imkansız hale getirir. Verileri açık metin olarak aktaran protokolün SSH'ye geçmesi şiddetle tavsiye edilir.

OpenSSH, ağ bağlantınızı bir dizi program aracılığıyla şifrelemenize olanak tanıyan, SSH protokolünün açık kaynaklı bir uygulamasıdır. Eğer Linux'ta SSH'ye sahip olmak istiyorsanız OpenSSH sunucu ve istemci paketlerinden oluşan OpenSSH'yi kurabilirsiniz.

OpenSSH sunucu/istemci paketleri aşağıdaki yardımcı programlarla birlikte gelir:

  • OpenSSH sunucusu: sshd (SSH arka plan programı)
  • OpenSSH istemcisi: scp (güvenli uzaktan kopyalama), sftp (güvenli dosya aktarımı), slogin/ssh (güvenli uzaktan oturum açma), ssh-add (özel anahtar tamamlama), ssh-agent (kimlik doğrulama aracısı), ssh-keygen (kimlik doğrulama anahtarı yönetimi) ).
OpenSSH sunucusunu ve istemcisini Linux'a kurmak

OpenSSH sunucusunu/istemcisini kurmak ve OpenSSH sunucusunu otomatik olarak başlayacak şekilde yapılandırmak istiyorsanız, dağıtıma bağlı olarak değişen aşağıdaki talimatları izleyin.

Debian, Ubuntu veya Linux Mint

$ sudo apt-get install openssh-sunucu openssh-client

Debian tabanlı sistemlerde, kurulduktan sonra OpenSSH açılışta otomatik olarak başlayacaktır. Herhangi bir nedenle OpenSSH sunucusu sistem başlangıcında otomatik olarak başlamazsa, sistem başlangıcında önyüklemeye açıkça ssh eklemek için aşağıdaki komutu çalıştırabilirsiniz.

$ sudo update-rc.d ssh varsayılanları

Fedora veya CentOS/RHEL 7

$ sudo yum -y openssh-server'ı yükle openssh-clients $ sudo systemctl sshd hizmetini başlat $ sudo systemctl sshd.service'i etkinleştir

CentOS/RHEL 6

$ sudo yum -y openssh-sunucusunu yükle openssh-istemcileri $ sudo hizmeti sshd'yi başlat $ sudo chkconfig sshd'yi aç

Arch Linux

$ sudo pacman -Sy openssh $ sudo systemctl sshd hizmetini başlat $ sudo systemctl sshd.service'i etkinleştir

OpenSSH sunucusu kurma

OpenSSH sunucusunu yapılandırmak istiyorsanız /etc/ssh/sshd_config dosyasında bulunan sistem genelindeki yapılandırma dosyasını düzenleyebilirsiniz.

İlginizi çekebilecek birkaç OpenSSH seçeneği vardır:
Varsayılan olarak sshd, 22 numaralı bağlantı noktasını dinler ve gelen ssh bağlantılarını dinler. Ssh için varsayılan bağlantı noktasını değiştirerek çeşitli otomatik hacker saldırılarını önleyebilirsiniz.
Eğer makinenizde birden fazla fiziksel ağ arayüzü varsa hangisinin sshd ile ilişkili olduğunu kontrol etmek isteyebilirsiniz, bunun için ListenAddress seçeneğini kullanabilirsiniz. Bu seçenek, gelen SSH'yi yalnızca belirli bir arayüzle sınırlandırarak güvenliğin artırılmasına yardımcı olur.

HostKey /etc/ssh/ssh_host_key

HostKey seçeneği, kişisel ana bilgisayar anahtarının nerede bulunduğunu belirler.

İzinKökGiriş no

PermitRootLogin seçeneği – root'un sisteme ssh aracılığıyla giriş yapıp yapamayacağı.

İzin Veren Kullanıcılar alice bob

AllowUsers seçeneğini kullanarak belirli Linux kullanıcıları için ssh hizmetini seçerek devre dışı bırakabilirsiniz. Birden çok kullanıcıyı boşluklarla ayırarak belirtebilirsiniz.

/etc/ssh/sshd_config değiştirildikten sonra ssh hizmetini yeniden başlattığınızdan emin olun.

OpenSSH'yi Debian, Ubuntu veya Linux Mint'te yeniden başlatmak için:

$ sudo /etc/init.d/ssh yeniden başlat

OpenSSH'yi Fedora, CentOS/RHEL 7 veya Arch Linux'ta yeniden başlatmak için:

$ sudo systemctl sshd.service'i yeniden başlat

OpenSSH'yi CentOS/RHEL 6'da yeniden başlatmak için:

$ sudo hizmeti sshd yeniden başlat

SSH'ye nasıl bağlanılır

Linux'tan SSH'ye bağlanma

Linux kullanıcılarının ek program yüklemesine gerek yoktur.

Windows'tan SSH'ye bağlanma

Misafirlerden gizlendi

.

Cygwin bir SSH istemcisinden daha fazlasıdır. Birçok Linux komutunu destekleyen güçlü bir birleştiricidir. Örneğin Cygwin, SSL sertifikaları oluşturmayı çok kolaylaştırıyor (tıpkı Linux gibi). Windows'ta kendinden imzalı sertifikalar oluşturmak için tefle dans etmeniz gerekir. Cygwin'in cURL'yi kullanması çok uygundur (ayrı bir şey yüklemeye gerek yoktur), vb. Windows'ta komut satırı ve Linux programları olmayanlar Cygwin'de bir çıkış yolu bulacaktır.

Cygwin'i kurmak kolaydır. Hadi gidelim

Misafirlerden gizlendi

Ve indir

Misafirlerden gizlendi

Misafirlerden gizlendi

Küçük bir dosya indirilecek - bu yükleyicidir. Grafik yükleyici. Çok sayıda seçenek içermesine rağmen, hepsi oldukça basittir ve birçoğu diğer grafik kurulum programlarından aşinadır. Bir şey net değilse "İleri"ye tıklamanız yeterlidir. Belki de yalnızca aşağıdaki pencere karışıklığa yol açabilir:

Kurulum için mevcut tüm öğeler burada sunulmaktadır. Şu anda bunları anlamamıza gerek yok. Çünkü en popüler olanları zaten kurulum için işaretlenmiştir. Ve gelecekte bir şeyler eksikse, ihtiyacınız olanı kolayca kurabilirsiniz.

SSH bağlantısı (Linux ve Windows için ortak)

Linux kullanıcıları konsolu açar, Windows kullanıcıları Cygwin yazar.

SSH'nin bağlanmak için aşağıdaki bilgilere ihtiyacı vardır:

  • IP veya ana bilgisayar adı
  • Port numarası
  • Kullanıcı adı
  • Kullanıcı şifresi
SSH bu parametrelerden ikisini tahmin edebilir: kullanıcı adı ve port numarası. Bir bağlantı noktası belirtilmezse varsayılan bağlantı noktası varsayılır. Kullanıcı belirtilmemişse bağlantının yapıldığı sistemdekiyle aynı ad kullanılır. Örneğin bağlantının ana bilgisayar adresi 192.168.1.36'dır. Eğer ararsam

Ssh192.168.1.36

Aşağıdakileri görüyorum

Alex@Mial-Pc ~ $ SSH 192.168.1.36 Konakçı "192.168.1.36 (192.168.1.36)" t "t" t "t" t "t anahtar parmak izi SHA256: Sixesuiivoeq00rxaqhxilxue8sc5r/yphf8s. Evet Hayır)?

Host'a ilk defa bağlandığım için tanımadığım bir host. Devam etmek isteyip istemediğimi soruyorlar. arıyorum Evet:

Uyarı: "192.168.1.36" (ECDSA) bilinen ana bilgisayarlar listesine kalıcı olarak eklendi. [e-posta korumalı]"ın şifresi:

Tamam, 192.168.1.36 ana bilgisayarı tanıdık ana bilgisayarlar listesine eklendi. Benden Alex kullanıcısı için bir şifre isteniyor. SSH olan sunucuda böyle bir kullanıcı olmadığı için tıklıyorum Ctrl+C(kırmak için) ve uzak sistemin kullanıcı adıyla birlikte komutu girin. Kullanıcı uzak makinenin adresinden önce girilir ve adresten @ simgesiyle ayrılır. İngilizcede @ simgesi at olarak okunur ve “in” olarak çevrilebilir. Onlar. kayıt [e-posta korumalı]"192.168.1.36 makinesindeki mial kullanıcısı" olarak yorumlanabilir.

Ssh [e-posta korumalı]

Alex@MiAl-PC davetinin yerini mial@mint daveti aldı. Bu, zaten uzaktaki makinede olduğumuz anlamına gelir, yani zaten bir bağlantı kurduk. Bir bağlantı noktası belirtmeniz gerekiyorsa (standart olandan farklıysa), bağlantı noktası -p anahtarından sonra belirtilmelidir. Örneğin şöyle:

Ssh [e-posta korumalı]-p 10456

Bağlandıktan sonra şöyle bir şeyle karşılaşıyoruz:

Linux mint 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 Debian GNU/Linux sistemine dahil olan programlar özgür yazılımlardır; Her programın tam dağıtım koşulları /usr/share/doc/*/copyright içindeki ayrı dosyalarda açıklanmıştır. Debian GNU/Linux, geçerli yasaların izin verdiği ölçüde KESİNLİKLE HİÇBİR GARANTİ ile birlikte gelir. Son giriş: 16 Haziran Salı 15:32:25 2015, 192.168.1.35'ten

Buradan uzak makinenin Linux Mint olduğu, çekirdek 3.16, 64 bit sürümü olduğu anlaşılıyor. Ayrıca önemli bilgiler arasında son oturum açma zamanı ve bağlantının kurulduğu IP adresi de yer alır. Saat ve IP size tanıdık gelmiyorsa ve tek kullanıcı sizseniz, sisteminizin güvenliği ihlal edilmiştir ve uygun işlemi yapmanız gerekir.

Nerede olduğumuzdan ve kim olduğumuzdan emin olmak için birkaç komut yazalım: pwd, [B]uname -a vesaire.:

Oturumu sonlandırmak (oturumu kapatmak) için

Veya tıklayın Ctrl+D.

Şifre girmeden SSH'ye giriş yapın

İlk olarak, daha kullanışlı. İkincisi, daha güvenlidir.

Öncelikle RSA anahtarlarını oluşturmamız gerekiyor. Linux kullanıcısıysanız sorun yok. Windows kullanıcısıysanız ancak tavsiyemi dinlemeyip PuTTY'yi seçtiyseniz, o zaman bir sorununuz var ve bunu nasıl çözeceğinizi kendiniz düşünüyorsunuz. Cygwin'iniz varsa, o zaman her şey yolunda demektir.

Uzak sistemde oturum açmayı başardıysanız oturumu kapatın. Bundan sonra yazın

Ssh-keygen -t rsa

Bizden dosya ismi isteniyor, herhangi bir şey girmemize gerek yok, varsayılan isim kullanılacaktır. Ayrıca şifre istiyor. Şifreyi girmiyorum.

Şimdi uzaktaki makinede bir .ssh dizini oluşturmamız gerekiyor. Komutun uzak bir makinede çalıştırılması aşağıda tartışılacaktır. Şimdilik, IP adresini ve kullanıcı adını kendi adınızla değiştirmeyi unutmadan komutu kopyalamanız yeterli:

Ssh [e-posta korumalı] mkdir.ssh

Şimdi id_rsa.pub dosyasının içeriğini uzak makineye kopyalamamız gerekiyor. Bunu yapmak çok kolaydır (verileri kendi verilerinizle değiştirmeyi unutmayın):

Kedi .ssh/id_rsa.pub | ssh [e-posta korumalı]"kedi >> .ssh/yetkili_anahtarlar"

Artık sadece giriş yapıyoruz ve artık bizden şifre istemiyorlar. Ve artık hep böyle olacak.

Kabuk oturumu oluşturmadan uzak bir sunucuda komutları yürütme

Uzak sistemde bir kabuk oturumu açmanın yanı sıra ssh, uzak sistemde bireysel komutları yürütmenize de olanak tanır. Örneğin, ağaç komutunu Remote-sys adlı uzak bir ana bilgisayarda çalıştırmak ve sonuçları yerel sistemde görüntülemek için şunu yaparsınız:

Ssh uzak sistem ağacı

Gerçek örneğim:

Ssh [e-posta korumalı] ağaç

Bu tekniği kullanarak uzak bir sistemde ls komutunu çalıştırmak ve çıktıyı yerel sistemdeki bir dosyaya yönlendirmek gibi ilginç şeyler yapabilirsiniz:

Ssh uzak sistemi "ls *" > dirlist.txt

Gerçek örnek:

Ssh [e-posta korumalı]"ls *" > dirlist.txt cat dirlist.txt

Yukarıdaki komuttaki tek tırnaklara dikkat edin. Bunun nedeni yol genişletmenin yerel makinede yapılmasını istemememizdir; çünkü bu yürütmeye uzak bir sistemde ihtiyacımız var. Ayrıca, standart çıktıyı uzak makinedeki bir dosyaya yeniden yönlendirmek istiyorsak, yeniden yönlendirme ifadesini ve dosya adını tek tırnak içine alabiliriz:

Ssh uzak sistemi "ls * > dirlist.txt"

Standart çıktıyı yerel makineden uzak makineye ssh aracılığıyla aktarma

Komutları yürütmek için eşit derecede ilginç bir seçenek biraz daha yüksek olarak verilmiştir:

Kedi .ssh/id_rsa.pub | ssh [e-posta korumalı]"kedi >> .ssh/yetkili_anahtarlar"

  • Cat komutu, yerel makinede bulunan .ssh/id_rsa.pub dosyasının içeriğini satır satır okur ve görüntüler.
  • | (boru), standart çıktıda görünecek olanı başka bir komuta iletir.
  • Kendisine iletilen dizeleri işleyecek bir komut yerine uzak sistemle (ssh) bağlantı kurulur. [e-posta korumalı]).
  • Uzak sistem, cat >> .ssh/authorized_keys komutunun sağlandığı satırları alır. Onlar. standart çıktının içeriği uzak makinede bulunan .ssh/authorized_keys dosyasına satır satır yazılır.
Uzak bilgisayarda bulunan bir grafik programını açma

Bir sonraki numara iki Linux bilgisayarı gerektiriyor. Ne yazık ki Cygwin bile bu numarayı kaldıramıyor. Ayrıca her iki Linux sisteminin de grafiksel kullanıcı arayüzüne sahip olması gerekir.

SSH ile tünel açma

Uzak bir ana bilgisayarla SSH aracılığıyla bağlantı kurulduğunda meydana gelen diğer şeylerin arasında, yerel ve uzak sistemler arasında oluşturulan şifreli bir tünelin oluşturulması da vardır. Tipik olarak bu tünel, yerel makinede yazılan komutların uzak makineye güvenli bir şekilde iletilmesini ve sonucun da güvenli bir şekilde geri gönderilmesini sağlamak için kullanılır.

Bu temel işlevselliğe ek olarak SSH protokolü, çoğu trafik türünün şifreli bir tünel üzerinden gönderilmesine izin vererek yerel ve uzak sistemler arasında bir tür VPN (sanal özel ağ) oluşturur.

Bu özelliklerden belki de en sık kullanılanı X Window sistemlerinin trafiğini yayınlama yeteneğidir. X sunucusunu çalıştıran bir sistemde (bunlar grafiksel kullanıcı arayüzüne sahip makinelerdir), uzak sistemde bir X istemci programını (grafiksel uygulama) çalıştırmak ve yerel sistemdeki işleminin sonuçlarını görmek mümkündür. Bunu yapmak kolaydır. Örneğin, uzak ana bilgisayar Remote-sys'e bağlanmak istiyorum ve üzerinde xload programını çalıştırmak istiyorum. Aynı zamanda bu programın grafik çıktısını da yerel bilgisayarda görebileceğim. Bu şu şekilde yapılır:

Ssh -X uzak sys xload

Gerçek örnek:

Ssh-X [e-posta korumalı] gedit

Onlar. SSH -X anahtarıyla başlar. Ve sonra program basitçe başlar. Ekran görüntüsüne bakın.

Kali Linux'tayım. SSH aracılığıyla uzaktaki bir bilgisayara başarıyla giriş yapıyorum. Bundan sonra gedit programını çalıştırdım. Bu program Kali Linux'ta bile olmayabilir ama benim bağlandığım Linux Mint'te olduğu kesin. Bu programın sonucunu sanki program yerel olarak çalışıyormuş gibi ekranda görebiliyorum. Ama yine şunu anlamanızı istiyorum, yerel bilgisayarda çalışan bir gedit programı yok. Gedit'in (veya bu şekilde açılan herhangi bir programın) sonucunu kaydetmek istersem, uzak bilgisayarın ortamında çalıştığı, dosya sistemini gördüğü vb. ortaya çıkar. Bu, yapılandırmak istediğinizde kullanışlıdır. grafiksel bir arayüz kullanarak uzaktaki bilgisayar.

Daha sonra aynı makalenin tüm masaüstünden bir görüntünün nasıl aktarılacağını “SSH aracılığıyla VNC nasıl yapılandırılır” bölümünde öğreneceksiniz.

Bazı sistemlerde bu hile, -X seçeneği yerine -Y seçeneğinin kullanılmasını gerektirir.

Uzak bir bilgisayardan/bilgisayara kopyalama (scp ve sftp)

scp

OpenSSH paketi ayrıca dosyaları ağ üzerinden kopyalamak için şifreli bir SSH tüneli kullanan iki program içerir. İlk program - scp(“güvenli kopya”) - dosyaları kopyalamak için benzer cp programı gibi daha sık kullanılır. En göze çarpan fark, dosyanın kaynağının uzak ana bilgisayar ve ardından iki nokta üst üste ve dosyanın konumu olabilmesidir. Örneğin home dizinimizden document.txt isimli bir belgeyi yerel sistemimizdeki mevcut çalışma dizininde bulunan Remote-sys dizinine kopyalamak istersek şunu yapabiliriz:

Scp uzak-sys:document.txt . document.txt %100 177 0,2KB/s 00:00

Gerçek örnek:

# varsa yerel makinedeki dosyayı silin rm dirlist.txt # uzaktaki makinede bir dosya oluşturun ssh [e-posta korumalı]"ls * > dirlist.txt" # varlığını kontrol edin ssh [e-posta korumalı]"ls -l" # yerel makine scp'ye kopyalayın [e-posta korumalı]:dirlist.txt. # cat dirlist.txt içeriğini kontrol edin

  • [e-posta korumalı]- kullanıcı adı ve uzak ana bilgisayar,
  • . (nokta), dosyanın uzak sunucudaki geçerli çalışma dizinine kopyalanması gerektiği ancak dosya adının aynı kalacağı anlamına gelir; nfile.txt
  • Hafıza:

    B'de oturum açtığınızda B'den A'ya bir dosya kopyalamak için:
    scp /yol/giden/dosya kullanıcı adı@a:/yol/giden/hedef
    A'da oturum açtığınızda B'den A'ya bir dosya kopyalama:
    scp kullanıcı adı@b:/yol/giden/dosya /yol/giden/hedef

    sftp

    Dosyaları SSH üzerinden kopyalamak için ikinci program sftp. Adından da anlaşılacağı gibi güvenli bir ftp programı alternatifidir. sftp orijinal ftp programı gibi çalışır. Ancak açık metin göndermek yerine şifreli bir SSH tüneli kullanır. Sftp'nin ftp'ye göre önemli bir avantajı, uzak bir ana bilgisayarda çalışan bir FTP sunucusu gerektirmemesidir. Yalnızca bir SSH sunucusu gerektirir. Bu, SSH istemcisi aracılığıyla bağlanan herhangi bir uzak makinenin aynı zamanda FTP benzeri bir sunucu olarak da kullanılabileceği anlamına gelir. İşte bir örnek oturum:

    Alex@MiAl-PC ~ $ sftp [e-posta korumalı] 192.168.1.36'ya bağlanıldı. sftp> ls dirlist.txt newfile.txt nfile.txt temp Videolar Belgeler İndirilenler Görüntüler Müzik Genel Masaüstü Şablonları sftp> lls dirlist.txt nfile.txt sftp> ls temp temp/TakeMeHome sftp> cd temp/ sftp> get TakeMeHome Getiriliyor /home / mial/temp/TakeMeHome'dan TakeMeHome'a ​​sftp>güle güle

    SFTP protokolü, Linux dağıtımlarında bulunabilen birçok grafik dosya yöneticisi tarafından desteklenir. Hem Nautilus'u (GNOME) hem de Konqueror'u (KDE) kullanarak, atlama çubuğuna sftp:// ile başlayan URI'leri (bağlantılar) girebilir ve SSH sunucusu çalıştıran uzak bir sistemde bulunan dosyalarla çalışabiliriz.

    Merhaba! Şu soruyla ilgileniyorum: İnternet üzerinden SSH aracılığıyla ev bilgisayarınıza nasıl bağlanılır. Evde kurulu bir FreeSSHd sunucum var. Anladığım kadarıyla harici IP'de bir şekilde 22 numaralı bağlantı noktasını açmam gerekiyor mu? Alex

    Evet, ihtiyaç sıklıkla ortaya çıkıyor. O yazıda pek çok şeyden bahsetmiştim ama Alex bize bu fırsatı sağladığı için burada sadece SSH'den bahsedeceğiz. Ayrıca ben de SSH ile inanılmaz derecede ilgileniyorum ve bu Windows'ta da var... mmm.

    SSH nedir ve neden gereklidir?

    Mesele şu ki, SSH S güvenli SH yani. Kontrol kabuğuna güvenli erişim protokolü. Bu nedenle, özellikle komut satırına erişim sağlar çünkü Shell şu şekilde çevrilmiştir: kabuk ve burada anlamda metin kontrol kabuğu. Ancak genel olarak bu protokol, diğer trafiğin kendi içinden ve şifrelenmiş biçimde geçmesine izin vermesi açısından dikkate değerdir. Böylece güvenli dosya sistemi bağlantı protokolüne SFTP adı verilir ve SSH üzerinde çalışır. Ancak HTTP veya hatta RDP olsun, kesinlikle diğer tüm bağlantıları tünelleyebilir. Özünde, “diz üstü bir VPN” olduğu ortaya çıkıyor.

    Alex burada işin yarısını zaten yaptı; FreeSSHd'yi ev bilgisayarına kurup başlattı. Bu, Windows'a SSH aracılığıyla bağlanmanıza olanak tanır. Bu durumda “izin verir” çok güçlü bir şekilde söylenir. Çünkü bu çözüm bir şekilde Windows'ta çalışıyor. İlk olarak, kontrol için düzgün bir metin arayüzü - bir komut satırı yok.

    En azından normal olanı - cmd - uzaktaki makineyle çok az şey yapmanıza olanak tanır. Powershell de var - bu daha modern ve güçlü bir çözüm. Freesshd, konsolu powershell olarak değiştirmenize izin veriyor, ancak ona bağlanamadım. CMD'ye bağlandım ancak tamamen kullanılamaz durumda:

    İkincisi, FreeSSHd durumunda, İnternet üzerinden bağlanmayı bir yana, yerel ağ üzerinden bile bir Windows bilgisayara bağlanamadım. Daha doğrusu, bağlanmak mümkündür ancak hizmet donar ve çöker; Windows ana bilgisayarını bu şekilde yönetemezsiniz.

    Bu nedenle, Alex'in dosya sistemine bağlanmak veya onu bir VPN olarak kullanmak ve SSH üzerinden bir şeyi proxy olarak kullanmak için Windows'ta bir ssh sunucusuna ihtiyacı olduğunu varsayıyorum. FreeSSHd'nin buna izin vereceğinden şüpheliyim. Çünkü üçüncüsü, ayarları bile kaydetmiyor; servisi yeniden başlattığınızda her şey ters gidiyor. Genel olarak, Alex'in yorumlarda buna neden ihtiyaç duyduğunu bize anlatacağını gerçekten umuyorum.

    Windows'ta SSH'yi başka nasıl çalıştırabilirsiniz?

    Daha uygulanabilir bir çözüm var - Powershelserver. Her ne kadar hataları olsa da en azından çökmüyor. Bu nedenle SSH üzerinden Windows sunucularına bağlanmak için kullanmanızı tavsiye ederim.

    İlk olarak, çökmeler olmadan istikrarlı bir şekilde çalışıyor. Ve bu sayede pencereleri gerçekten powershell aracılığıyla kontrol edebilirsiniz.

    Tüm ayarlar normal şekilde kaydedilir. FreeSSHd'dekiyle aynı işlevler ve hatta daha fazlası mevcuttur - SCP'yi kullanabilirsiniz - bu, dosyaları SSH üzerinden kopyalamaktır.

    Ama en şık şey konsol! İşe yarıyor beyler!

    Kullanıcı eklemekle uğraşmadan kolayca bağlandım (bunun freesshd'de yapılması gerekiyor). Yönlendirme tablosunu görüntülemeye yönelik bu basit komut mükemmel bir şekilde çalıştı ve gerekli bilgileri sağladı. netstat -rn'yi görüntülemeye çalıştığımda Frisssh bana "düştü"

    Burada gerçekten Rusça karakterlerin görüntülenmediğini görebilirsiniz. Yani bizimle kurulum yapmak çok kolay, sadece powershellserver üzerinde ihtiyacım olan kodlamayı ayarlıyorum, yeniden başlatıyorum, yeniden bağlanıyorum...

    Powershellserver'da Kodlamayı Ayarlama

    Artık tam SSH'ye sahibiz ve Windows'u konsol aracılığıyla tamamen yönetebiliyoruz.

    Microsoft kendi SSH çözümünü oluşturacak

    Bu arada, Microsoft yaz aylarında geliştireceğini duyurmuştu. yerli Windows'un yeni sürümlerinde Powershell için SSH desteği. Habré ve pcweek (ve daha fazlası) hakkında haber duyuruları var. Bu nedenle, bu dönüm noktası niteliğindeki etkinliği yalnızca sabırsızlıkla bekleyebiliriz, çünkü bu, sektördeki çalışmalar için gerçekten bir atılım olacaktır. heterojen ağlar.

    Diğer işlevleri (sftp ve scp) kontrol etmedim, ancak bazı nedenlerden dolayı onların da harika çalışacaklarından eminim.

    Dışarıdan SSH portu nasıl açılır?

    Böylece bu makalenin ilk etapta başlatıldığı gizli şeye geldik. Okuyucunun sorusuna cevap vereceğim.

    Yönlendirici veya modemde bağlantı noktası iletme

    Bir bilgisayara dışarıdan bağlanmak için gerçekten NAT yapmanız veya belirli bir durumda . Bunun nasıl yapılacağı, ağ geçidi olarak kullanılan cihaza bağlıdır. Bu bir ADSL modem veya . Çoğu durumda cihazınıza ilişkin ayrıntılı talimatlara "bağlantı noktası yönlendirme" gibi sorgularla kolayca ulaşılabilir. cihaz modeli" veya "port yönlendirme cihaz modeli»

    Zyxel Keenetic Lite ev yönlendiricimde şöyle görünüyor:

    Linksys WAG200G yönlendiricinin işlevselliğinin elinizin altında olduğu bir ADSL modemde bu şekilde görünüyor:

    Ayrıca bazı sağlayıcılar "beyaz" sunmadıkları için bu teknik olarak mümkün olmayabilir.

    SSH tüneli kullanarak bir bağlantı noktasını uzak bir sunucuya iletme

    Bu durumda, SSH aracılığıyla bağlanmanın tek yolu yerel bir Windows makinesinden (SSH aracılığıyla bağlanmak istediğimiz makinenin aynısı) uzak bir sunucuya gitmektir. Bu durumda internetteki bazı sunuculara SSH erişiminizin olması gerekir.

    "Ters" bir SSH tüneli kurma

    Bu tür bir yönlendirme, basit bir SSH istemci Macunu kullanılarak kolayca yapılabilir (ayrıca vardır). Daha sonra bu çok uzak sunucuya, iletilen bağlantı noktası aracılığıyla bağlanabilirsiniz.

    Aslında burada bir döngü var. Windows'tan uzak bir sunucuya bir SSH oturumu açıyoruz ve bu bağlantının içinde Windows Powershellserver'ın (veya FreeSSHd'nin) SSH bağlantı noktasını uzak sunucunun yerel bağlantı noktası 3322'ye tünelliyoruz. Ve aynı oturumda artık aynı 3322 numaralı bağlantı noktası üzerinden Powershell üzerindeki Windows'a tekrar bağlanıyoruz... Umarım kafanız karışmaz. Ama... Bu bir sihir, arkadaşlar! :) SSH tünelleri özel bir dünya, onların yardımıyla inanılmaz şeyler yapabilirsiniz, öyle kapılar açabilirsiniz ki, tüm güvenlik görevlileri aniden tüm bunları öğrenseler acı bir şekilde ağlarlar... Ama olsun.

    Peki, Windows SSH portunu dünyayla paylaşmanız gerekiyorsa ters tünel ayarlarında hedef olarak ip_server:3322 belirtmeniz yeterli. Bu sunucuya erişimin olduğu her yerden Windows'a SSH aracılığıyla bağlanabileceksiniz.

    Bağlantı noktasının doğru şekilde iletilip yönlendirilmediği nasıl kontrol edilir?

    Çok basit. Açık olup olmadığını kontrol etmeniz gerekiyor. SSH durumunda açık port, sürümüyle ilgili bir mesajla yanıt verecektir. Bir bağlantı noktasını kontrol etmenin en basit yolu telnet yardımcı programıdır.

    Komut satırına boşluklarla ayırarak yazmanız yeterlidir:

    telnet etki alanı_veya_IP bağlantı noktası

    Bağlantı noktası mevcutsa şunun gibi bir şey göreceksiniz:

    Bağlantı noktası mevcutsa SSH yanıtı

    Bağlantı noktası herhangi bir nedenden dolayı kullanılamıyorsa, "bağlantı reddedildi" veya "bağlantı zaman aşımı" ifadesini görürsünüz. İlk durumda bu anlık olacaktır ve bağlantı noktasının bir güvenlik duvarı tarafından kapatıldığı anlamına gelir.

    İkinci durumda, "askıda kalma" gibi görünecek ve birkaç dakikaya kadar sürebilir - telnet istemcisi bir bağlantı kurmaya çalışacaktır. Bu aynı zamanda farklı türde bir güvenlik duvarı tarafından engelleme anlamına da gelebilir. Ya belirtilen ana bilgisayar kullanılamıyor ya da üzerindeki bağlantı noktası kapalı.

    Telnet aracılığıyla bağlanabildiyseniz Ctrl+] tuş kombinasyonuna basın ve enter tuşuna basın. çıkış yapmak, ardından Enter'a basın. Aksi takdirde oturumu kesemezsiniz ve hâlâ ihtiyacınız varsa yeni bir konsol penceresi açmanız gerekir.

    Bu makale tamamlanmamış olarak işaretlendi. Makalenin sonundaki nota bakın.

    Bu makale, Ubuntu'daki güvenli bir terminalin (güvenli kabuk) istemcisine ve sunucusuna, bunların yapılandırılmasına ve kullanımına ayrılmıştır. SSH, yüksek derecede bağlantı güvenliğine sahip bir bilgisayara uzaktan erişim sağlamanıza olanak tanıyan özel bir ağ protokolüdür. Ssh protokolü hakkında daha fazla bilgi edinebilirsiniz.

    Çalışma prensiplerinin ve kullanılan uygulamaların açıklaması

    Temel olarak SSH, bir SSH sunucusu ve bir SSH istemcisi olmak üzere iki uygulama biçiminde uygulanır.Ubuntu, bir SSH istemcisi ve sunucusu olan OpenSSH'nin ücretsiz bir uygulamasını kullanır. Bağlanırken istemci, sunucu ile bir yetkilendirme prosedürüne tabi tutulur ve aralarında şifreli bir bağlantı kurulur. OpenSSH sunucusu hem ssh1 hem de ssh2 protokolleriyle çalışabilir. Ssh1 protokolü şu anda güvensiz olarak kabul ediliyor ve kullanımı kesinlikle tavsiye edilmiyor. Bu kılavuzun temel amacı, yapılandırmasını ve kullanımını açıklamak olduğundan, protokolün çeşitli teknik ayrıntılarını kasıtlı olarak atlıyorum. İnternette protokolün kendisi, çalışma prensipleri, şifreleme algoritmaları vb. Hakkında pek çok makale var, örneğin bunu detaylı olarak okuyabilirsiniz.

    Kurulum

    Düzenlemek OpenSSH Komutu terminalden kullanabilirsiniz:

    sudo apt-get ssh'yi yükle

    Ssh meta paketi hem istemci hem de sunucu içerir, ancak istemci zaten varsayılan olarak Ubuntu'ya dahil olduğundan bu büyük olasılıkla yalnızca sunucuyu yükleyecektir.

    Sunucu Ayarlama

    Kurulum sırasında SSH sunucusu otomatik olarak başlangıca eklenir. Komutları kullanarak başlatılmasını, durdurulmasını veya yeniden başlatılmasını kontrol edebilirsiniz:

    sudo hizmeti ssh durdur| başlat| tekrar başlat

    Bir SSH sunucusunun ana yapılandırma dosyası, yalnızca süper kullanıcı tarafından okunabilen veya düzenlenebilen /etc/ssh/sshd_config dosyasıdır. Bu dosyada yapılan her değişiklikten sonra bu değişikliklerin geçerli olması için ssh sunucusunu yeniden başlatmanız gerekir.

    Ubuntu'daki varsayılan SSH sunucusu yapılandırmasına örnek:

    # Rusça # # yorumlarıyla açık ssh sunucu yapılandırmasına bir örnek..2010. # # # # # # Kurallar: # # "Varsayılan" derken, direktif açıkça belirtilmediğinde # # sshd'nin davranışını kastediyoruz. Ubuntu # #'da sshd_config dosyasının zaten # # özellikle Ubuntu için varsayılan ayarlar olan bir dizi ayar içerdiğini belirtmekte fayda var. # # Bu tür ayarlar bu dosyada belirtilmiştir. # # # ############################################ ############# ################ Adres/bağlantı noktası ayarları, vb. ########### ##################################### # ###################### # # ## Liman ###################### ### ############################ # # # Kullanılan bağlantı noktası. Birkaç tane belirleyebilirsiniz, örneğin: # # Bağlantı Noktası 22 # # Bağlantı Noktası 23 # # Bağlantı Noktası 24 # # Standart olmayan bir bağlantı noktası kullanılması önerilir çünkü # # standart genellikle potansiyel # # delik açısından botlar tarafından taranır. Bir adres yoluyla # # belirtilirse atlanabilir. Ayrıca ListenAddress parametresine bakın. # # # Bağlantı Noktası 22 # # ## DinlemeAdresi ##################################### ### # # # Sunucunun dinlediği ağ adresi. Adres şu şekilde # # yazılabilir: # # ListenAddress host|IPv4_addr|IPv6_addr # # ListenAddress host|IPv4_addr:port # # ListenAddress :port # # Herhangi bir port belirtilmezse, sshd bu adresi dinleyecek ve # # Port seçeneğinde belirtilen port. Eğer # # bir bağlantı noktası belirtmeden ListenAddress'i kullanacaksanız, # # Port seçeneği ListenAddress seçeneğinden önce gelmelidir. # # belirtilmemişse, varsayılan olarak tüm yerel # # adresleri dinler. Birden fazla adres belirleyebilirsiniz. # # # ## Adres Ailesi ######################################### # # # Sshd tarafından hangi IP adresi ailesinin # # kullanılması gerektiğini belirtir. Olası seçenekler: # # “herhangi biri” - herhangi biri # # “inet” (yalnızca IPv4) # # “inet6” (yalnızca IPv6) # # Varsayılan - “herhangi biri”. # AdresAilesi inet # # ## UseDNS ####################################### # ######## # # # Sshd'nin ana bilgisayar adını kontrol edip etmeyeceğini ve # #, istemci tarafından gönderilen IP adresini DNS'den alınan # # ile kontrol etmek için bu ana bilgisayar adını kullanıp kullanmayacağını belirtir. # # Varsayılan değer "evet" dir". # # # ############################################ ############# ############# Kullanıcı erişim ayarları ############## ####### ############################################### ### # # # Bir kullanıcıya izin verip vermemek # # DenyUsers, AllowUsers, DenyGroups ve AllowGroups yönergeleriyle belirlenir. # # bu durumda, kontrol zincir boyunca yukarıdan aşağıya doğru gider: # # ## Kullanıcıları Reddet ## # # || # # ## Kullanıcılara İzin Ver ## # # || # # ## ReddetmeGrupları ## # # || # # ## AllowGroups ## # # Yalnızca kullanıcı ve grup adları kabul edilir, sayısal # # tanımlayıcılar (Kullanıcı Kimliği) tanınmaz. Sırasıyla birden fazla kullanıcının/grubun # # kaydını # # boşlukla ayırarak düzeltin. Kullanıcı@ana bilgisayar biçiminde yazılırsa, # # kullanıcı ve ana bilgisayar ayrı ayrı kontrol edilir, bu, # # belirli ana bilgisayarlardan belirli kullanıcılara erişimi # # sınırlamaya izin verir. # # DenyUsers ve AllowUsers yönergelerinin parametre olarak kullanıcının # # adını aldığını, DenyGroups ve AllowGroups'un ise # # grup adını aldığını hatırlamakta fayda var. Kullanıcı ve grup adlarını kaydetmeye yönelik formlar hakkında # # daha fazla bilgi için man ssh_config dosyasındaki DESENLER'e bakın. # # # ## Kullanıcıları Reddet ######################################### ### # # # Sshd'yi KULLANAMAYAN KULLANICILARIN listesi. # # Varsayılan - belirtilmemiş = hiç kimse yasaklanmamıştır. Onlar. burada # # bir kullanıcı belirtilirse, bu kullanıcının ssh sunucusuna # # erişimi reddedilecektir. # # # ## Kullanıcılara İzin Ver ######################################### ## # # # Sshd'yi KULLANABİLECEK KULLANICILARIN listesi, # # Varsayılan olarak - belirtilmemiş = herkese izin verilir. Onlar. # # en az bir kullanıcı belirtilirse, # # sunucusuna ssh erişimi yalnızca o kullanıcıya açıktır. # # # ## DenyGroups ########################################## ## # # # sshd tarafından KULLANILMAMASI gereken GRUPLARIN listesi. # # Varsayılan - belirtilmemiş = hiçbir grup yasaktır. # # Yani en az bir grup belirtilirse, bu gruba dahil olan # # kullanıcıların ssh # # sunucusuna erişimi reddedilecektir. # # # ## AllowGroups ######################################### # # # # sshd'nin KULLANABİLECEĞİ GRUPLARIN listesi. # # Varsayılan - belirtilmemiş = herkese izin verilir. Onlar. # # en az bir grup belirtilirse, yalnızca bu gruba dahil olan kullanıcıların# # ssh sunucusuna erişmesine izin verilecektir.# # # ################### # ############################################### ### Bağlantı durumunu belirleyen seçenekler ############# ########################### ####### ######################## # # ## TCPKeepAlive ############# ######### ######################## # # # Sistemin istemciye TCP mesajları göndermesi gerekip gerekmediğini belirtir # # Bağlantıyı sürdürmek için. Bu paketleri ## gönderirseniz bağlantının kopup kopmadığını tespit edebilirsiniz. Ancak bu aynı zamanda # #, anlık bir yönlendirme kesintisi durumunda bağlantının kopabileceği anlamına da gelir ve # # bu bazıları için çok can sıkıcıdır. Öte yandan, eğer # # bu tür mesajlar gönderilmezse, sunucudaki oturumlar # # süresiz olarak devam edebilir, "hayalet" kullanıcılar # # oluşturabilir ve sunucu kaynaklarını tüketebilir. Varsayılan değer “evet”tir,# # yani. bu tür mesajlar gönderin. Bu tür # # mesajın gönderilmesini devre dışı bırakmak için değeri "hayır" olarak ayarlayın. Daha önce bu # # seçeneğe KeepAlive adı veriliyordu. Bir bağlantının # # durumunu kontrol etmenin # # daha güvenli yolları olduğunu belirtmekte fayda var (aşağıya bakınız). # # # TCPKeepAlive evet # # ## ClientAliveCountMax ################################### # # # # sshd # #'nin istemciden herhangi bir yanıt almadan arka arkaya gönderdiği istemcilere # # mesaj sayısını ayarlar. Eşiğe ulaşılırsa ve istemci # # yanıt vermezse, sshd istemcinin bağlantısını keserek # # ssh oturumunu sonlandıracaktır. Bu tür # # mesajların kullanımının TCPKeepAlive direktifinden tamamen farklı olduğunu belirtmekte fayda var. # # İstemcilerden/istemcilerden gelen mesajlar şifrelenmiş bir # # kanal üzerinden gönderilir ve bu nedenle sahteciliğe karşı duyarlı değildir. Mesajlar # # TCPKeepAlive sahteciliğe karşı hassastır. İstemci canlı # # mekanizması özellikle sunucu ve istemcinin bağlantının ne zaman devre dışı kaldığını bilmesi # # gerektiği durumlarda değerlidir. Varsayılan # # değeri 3'tür. ClientAliveInterval # #'ın 15'e ayarlanması ve ClientAliveCountMax'ın # # varsayılanda bırakılması durumunda, yanıt vermeyen istemcilerin bağlantısı yaklaşık # # 45 saniye sonra kesilecektir. Bu yönerge yalnızca # # ssh2 protokolü için çalışır. # # # ## ClientAliveInterval ##################################### # # # Setler saniye cinsinden zaman aralığı. Bu aralıkta istemciyle # # iletişim olmazsa, sshd # # şifreli bir kanal üzerinden istemciden # # yanıt talep eden bir mesaj gönderir. Varsayılan 0'dır, yani. # # bu tür mesajlar göndermeyin. Bu yönerge # # yalnızca ssh2 protokolü için çalışır. # # # ############################################ ############# ############### Genel kimlik doğrulama seçenekleri ################ ## ############################################### ######## # # ## Yetkili Anahtar Dosyası ################################### # # # # Kullanıcıların kimliğini doğrulamak için kullanılan genel anahtarları # # içeren bir dosyayı belirtir. # # yönergesi, # # bağlantı kurma işlemi sırasında eklenen %M biçiminde belirteçler içerebilir. # # Aşağıdaki belirteçler tanımlanmıştır: # # %% - "%" harfiyle değiştirildi # # %h - kimliği doğrulanmış kullanıcının ana dizini ile değiştirildi # # kimliği doğrulanmış kullanıcının adı ile değiştirildi # # %u - kimliği doğrulanmış kullanıcının adı ile değiştirildi # # Böylece, anahtar dosyası mutlak bir şekilde # # (yani anahtarlarla paylaşılan bir dosya) ve kullanıcıya bağlı olarak dinamik olarak # # (yani her kullanıcı için bir # # dosya) olarak belirtilebilir. # # Varsayılan “.ssh/authorized_keys”dir. # # Kullanıcının ana klasöründeki bir anahtar dosyası örneği: # # AuthorizedKeysFile %h/.ssh/authorized_key # # Paylaşılan bir dosya örneği: # # AuthorizedKeysFile /etc/ssh/authorized_keys # # Şunlar için yetkili_anahtarlar dosyasının açıklamasına bakın: daha fazla bilgi. # # # ## ChallengeResponseAuthentication ########################### # # # Challenge-response kimlik doğrulamasına izin verilip verilmeyeceğini belirtir # # ). Login.conf'taki tüm # # kimlik doğrulama türleri desteklenir. Varsayılan "evet", # # yani. izin vermek. # # Ubuntu'da - güvenlik nedeniyle devre dışı bırakıldı. # # # ChallengeResponseAuthentication no # # ## Host BasedUsesNameFromPacketOnly ####################### # # # # # # # Sunucunun, istemcinin ana bilgisayar adını nasıl alması gerektiğini belirtir # # ana bilgisayar doğrulamasını temel alan bir kimlik doğrulama şeması. # # "Evet" olarak ayarlanırsa, sshd # # ~/.shosts, ~/.rhosts veya /etc/hosts.equiv dosyalarındaki eşleşmeyi kontrol ederken istemci tarafından sağlanan ana bilgisayar adını kullanır. # # (ters DNS çözümlemesi gerçekleştiriliyor) "Hayır" olarak ayarlanırsa # # - sshd, adı TCP bağlantısının kendisinden çözecektir. # # Varsayılan "hayır"dır. # # # ## Rhosts'u Yoksay ######################################### # # # Ana bilgisayar tabanlı kimlik doğrulamada .rhosts ve .shosts dosyalarının # # kullanımını engeller. # # (RhostsRSAAuthentication veya Ana Bilgisayar Tabanlı Kimlik Doğrulaması). # # /etc/hosts.equiv ve /etc/ssh/shosts.equiv dosyaları hala # # kullanılıyor. # # Varsayılan “evet”tir. # # # IgnoreRhosts evet # # ## IgnoreUserKnownHosts ################################### # # # # # ana bilgisayar tabanlı kimlik doğrulama işlemi # # (RhostsRSAAuthentication veya Host BasedAuthentication) sırasında sshd'nin kullanıcı # # "bilinen ana bilgisayarlar" dosyasını ~/.ssh/known_hosts yoksayması gerekip gerekmediğini belirtir. # # Varsayılan “hayır”dır. # # # ## Kara Listedeki Anahtarlara İzin Ver ################################ # # # Sshd'nin kabul edilip edilmeyeceğini belirtir anahtarlar # # güvenliği ihlal edilmiş olarak kara listeye alındı ​​(bilinen güvenliği ihlal edilmiş # # anahtarlar (bkz. ssh-vulnkey)). "Evet" olarak ayarlanırsa - # # bu tür anahtarlarla yapılan kimlik doğrulama girişimleri günlüğe # # kaydedilir ve kabul edilir, "hayır" olarak ayarlanırsa - # # kimlik doğrulama girişimleri reddedilir. # # Varsayılan “hayır”dır. # # # ## BoşŞifrelere İzin Ver ##################################### # # # İçinde Şifre kullanılarak kimlik doğrulamaya izin verilmesi durumunda # #, boş bir şifreyle oturum açmanın mümkün olup olmadığını gösterir. # # Varsayılan “hayır”dır. # # # PermitEmptyPasswords no # # ## PermitRootLogin ###################################### # # # # Süper kullanıcı # # (kök) olarak ssh girişinin mümkün olup olmadığını belirtir. Aşağıdaki değerleri alabilir: # # “evet” - süper kullanıcı oturum açabilir. # # geçerli genel kimlik doğrulama şeması uygulanır. # # # # “şifresiz” - süper kullanıcı giriş yapabilir. # # Bunun için şifre kimlik doğrulaması devre dışı bırakılacak. # # # # “yalnızca zorunlu komutlar” - süper kullanıcı, ortak anahtara dayalı # # kimlik doğrulamasını kullanarak ve yalnızca yürütülmesi için gereken komutu ilettiğinde # # kullanarak oturum açabilecektir. # # Bu, yedekleme yapmak için kullanışlıdır, # # normal olsa bile (örn. ssh aracılığıyla değil) # # süper kullanıcı girişi devre dışı bırakılır. Süper kullanıcı için diğer tüm # # kimlik doğrulama yöntemleri engellenecektir.# # # # “hayır” - süper kullanıcı # # oturum açmak için ssh'yi kullanamaz. # # # # Varsayılan değer "evet" dir". # # # PermitRootLogin evet # # ## Protokol ###################################### ######## # # # Sshd'nin hangi protokolü kullanması gerektiğini belirtir. # # '1' ve '2'nin olası değerleri sırasıyla ssh1 ve ssh2 # #'dir. Eş zamanlı yazma mümkündür, bu durumda # # değerlerin virgülle ayrılması gerekir. # # Varsayılan “2.1”dir. # # # # girdilerindeki protokol sırasının önceliği belirlemediğini belirtmekte fayda var çünkü istemci, sunucu tarafından önerilen # # protokollerden hangisinin # # kullanılacağını seçer. "2,1" girişi "1,2" girişiyle # # tamamen aynıdır. # # # Protokol 2 # # ## KullanımPAM ##################################### ########## # # # PAM arayüzünü etkinleştirir (Takılabilir Kimlik Doğrulama Modülü # # arayüzü). "Evet" olarak ayarlanırsa, oturum ve hesap modülü işleme # # dışındaki tüm kimlik doğrulama türleri # # PAM kimlik doğrulaması yapılacaktır. # # meydan okuma yanıtına dayalı olarak kullanılır (ChallengeResponseAuthentication ve # # PasswordAuthentication) Çünkü PAM'de # # Challenge-Response kimlik doğrulaması genellikle parola kimlik doğrulamasıyla aynı rolü # # yerine getirir; # # ya Parola Kimlik Doğrulamasını ya da # # ChallengeResponseAuthentication'ı devre dışı bırakmalısınız. Şunu belirtmek gerekir ki # #, UsePAM yönergesi etkinleştirilirse, # # sshd'yi root dışında bir kullanıcı olarak çalıştıramazsınız. # # Varsayılan değer hayır". # # # UsePAM evet # # ## Şifre Kimlik Doğrulaması ################################# # # # # # şifre kullanılarak kimlik doğrulamanın yapılıp yapılmadığı etkinleştirildi. # # Varsayılan “evet”tir. # # # ## Ana Bilgisayar Anahtarı ######################################### ##### # # # SSH tarafından kullanılan # # özel ana makine anahtarını içeren dosyayı belirtir. Varsayılan değer, ssh1 protokolü için /etc/ssh/ssh_host_key # # ve ssh2 protokolü için /etc/ssh/ssh_host_rsa_key ve # # /etc/ssh/ssh_host_dsa_key'dir. # # şunu belirtmekte fayda var ki sshd, kullanıcı dışında hiç kimsenin erişemeyeceği bir # # dosyasını kullanmayacaktır. # # anahtarlarla birden fazla dosya kullanabilirsiniz, anahtarlar ssh1 protokolü için “rsa1” - # # ve ssh2 protokolü için “dsa”/“rsa”dır. # # # Ana Bilgisayar Anahtarı /etc/ssh/ssh_host_rsa_key Ana Bilgisayar Anahtarı /etc/ssh/ssh_host_dsa_key # # ############################# ### ########################### ########## SSH protokolü sürüm 1 (ssh1) seçenekleri ### ########## ################################### ### ################### # ssh1 protokolünün kullanılması KESİNLİKLE ÖNERİLMEZ.# # # Ssh2 protokolü ssh1'den çok daha güvenlidir # ### ######## ######################################## ####### # # ## KeyRejenerasyonAralığı ############################### # # # ssh1 protokolü - belirli bir zamanda bir kez # # yeni bir geçici sunucu # # anahtarı otomatik olarak oluşturulur (eğer kullanılmışsa). Bu, # # daha sonra bu oturumların parametreleriyle makinede oturum açmak ve # # anahtarları çalmak amacıyla, ele geçirilen oturumların şifresinin çözülmesini # # önlemek için yapılır. Böyle bir anahtar hiçbir yerde saklanmaz (# # RAM'de saklanır). Bu yönerge anahtarın # # ömrünü saniye cinsinden belirtir, sonrasında # # yeniden oluşturulur. Değer 0 - # # olarak ayarlanırsa anahtar tekrar oluşturulmayacaktır. # # Varsayılan değer 3600'dür (saniye). # # # KeyRe GenerationInterval 3600 # # ## RhostsRSAAuthentication ################################ # # # Kimlik doğrulamanın yapılıp yapılmayacağını belirtir RSA aracılığıyla başarılı # # ana bilgisayar kimlik doğrulamasıyla birlikte # # rhosts veya /etc/hosts.equiv dosyalarına dayanmaktadır. # # Yalnızca ssh1 protokolüyle ilgilidir. # # Varsayılan “hayır”dır. # # # RhostsRSAKimlik Doğrulaması hayır # # ## RSAAKimlik Doğrulaması ##################################### ## # # # "Saf" RSA kimlik doğrulamasına izin verilip verilmediğini belirtir. # # Yalnızca ssh1 protokolüyle ilgilidir. # # Varsayılan “evet”tir. # # # RSAAkimlik doğrulama evet # # ## ServerKeyBits ###################################### ### # # # Ssh1 protokolü için # # sunucunun geçici anahtarındaki bit sayısını tanımlar. Minimum değer 512'dir. # # Varsayılan değer 1024'tür. # ServerKeyBits 768 # # ############################## # ########################## ########### SSH protokolü sürüm 2 (ssh2) seçenekleri ## ## ######## ###################################### ### ################## # # ## Şifreler ###################### ## ###################### # # # ssh2 protokolü # # için izin verilen şifreleme algoritmalarını belirtir. Birden fazla algoritma # # virgülle ayrılmalıdır. Desteklenen algoritmalar: # # “3des-cbc”, “aes128-cbc”, “aes192-cbc”, “aes256-cbc”, # # “aes128-ctr”, “aes192-ctr”, “aes256-ctr”, “ arcfour128”, # # “arcfour256”, “arcfour”, “blowfish-cbc”, “cast128-cbc”. # # Varsayılan olarak: # # aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128, # # arcfour256,arcfour,aes192-cbc,aes256-cbc,aes128-ctr, # # aes192-ctr, aes256 -ctr # # ## Ana Bilgisayar Tabanlı Kimlik Doğrulama ################################# # # # Kimlik doğrulamanın yapılıp yapılmadığını belirtir # # ana makine doğrulamasına göre etkinleştirildi. rhosts veya /etc/hosts.equiv kontrol edilir, # # ve eğer başarılı olursa, ortak anahtarın # # başarılı bir şekilde kontrol edilmesiyle birlikte erişime izin verilir. Bu ## direktifi RhostsRSAAuthentication direktifi ile aynıdır ve ## sadece ssh2 protokolü için uygundur. # # Varsayılan "hayır"dır. # # # Ana Bilgisayar Tabanlı Kimlik Doğrulama hayır # # ## MAC'ler ###################################### ############ # # # Geçerli bir MAC algoritmasını belirtir (mesaj # # kimlik doğrulama kodu). MAC algoritması ## tarafından veri bütünlüğünü korumak için ssh2 protokolü tarafından kullanılır. Birden fazla # # algoritma virgülle ayrılmalıdır. # # Varsayılan: # # hmac-md5,hmac-sha1, [e-posta korumalı] ,hmac-ripemd160, # # hmac-sha1-96,hmac-md5-96 # # # ## Pubkey Kimlik Doğrulaması ######################## ########## # # # # # genel anahtarına dayalı kimlik doğrulamasına izin verilip verilmediğini belirtir. Yalnızca ssh2 protokolüyle ilgilidir. # # Varsayılan “evet”tir. # # # Pubkey Kimlik Doğrulaması evet ########################################### # ################ ################### GSSAPI Seçenekleri ########### ## ############# ################################## ## ######################## # # # ############ Yalnızca ssh2 protokolü için geçerlidir #### #### ### # # ## GSSAPIAkimlik doğrulama #################################### ## # # # Kullanıcı kimlik doğrulamasının # # GSSAPI'ye dayalı olup olmadığını belirtir. Varsayılan "hayır"dır, yani. yasaktır. # # # ## GSSAPIKEyExchange ##################################### # # # # # # GSSAPI'ye dayalı anahtar değişimine izin verilip verilmediğini belirtir. GSSAPI kullanılarak yapılan anahtar değişimi, ana bilgisayar kimliğini doğrulamak için # # ssh anahtarlarına dayanmaz. # # Varsayılan "hayır"dır - yani. takas yasaktır. # # # ## GSSAPICleanupCredentials ############################## # # # Kullanıcı önbelleğinin otomatik olarak yok edilip edilmeyeceğini belirtir # # # # oturum sona erdiğinde kimlik doğrulama bilgilerinin sayısı. # # Varsayılan "evet"tir - yani. yok edilmesi gerekiyor. # # ### GSSAPIStrictAcceptorCheck ############################## # # # Kimlik kontrolünün ne kadar sıkı olması gerektiğini belirtir # GSSAPI aracılığıyla kimlik doğrulaması yapılırken # istemci. # # "evet" değeri, istemcinin mevcut ana bilgisayardaki # # alıcı ana bilgisayar hizmetine kimlik doğrulaması yapmasına neden olur. "Hayır" # # değeri, istemcinin herhangi bir # # hizmet anahtarını kullanarak kimlik doğrulaması yapmasına olanak tanır. # # Varsayılan "evet"tir. # # Bunu "hayır" olarak ayarlamanın # # yalnızca nadir Kerberos GSSAPI kitaplıklarıyla çalışabileceğini belirtmekte fayda var. # # # ############################################ ############# ################## Kerberos Seçenekleri ################ ########## ###################################### ### ################## # # ## KerberosKimlik Doğrulaması ####################### ### ######## # # # Kimlik doğrulama için kullanıcı tarafından sağlanan # # parolasının (Parola Kimlik Doğrulaması) Kerberos KDC'de doğrulama gerektirip gerektirmediğini belirtir. # # Bu seçeneği kullanmak için sunucunun # # KDC'nin doğru olduğunu doğrulaması gerekir. (Sunucu, # # KDC'nin kimliğinin doğrulanmasına izin veren bir # # Kerberos sunucu sekmesine ihtiyaç duyar) # # Varsayılan "hayır"dır. # # # ## KerberosGetAFSToken ###################################### # # # # AFS etkinse ve kullanıcı bir Kerberos 5 TGT aldıysa, # # kullanıcısı ana klasörüne erişmeden önce bir AFS belirteci almaya çalışıp çalışmayacağını belirtir. # # Varsayılan “hayır”dır. # # # ## KerberosOrLocalPasswd ################################# # # # Durumda ne yapılacağını belirtir Kerberos aracılığıyla # # kimlik doğrulaması başarısız olursa. # # değer = "evet" ise, şifre herhangi bir ek yerel yetkilendirme mekanizması # # kullanılarak doğrulanacaktır, # # örneğin /etc/passwd. # # Varsayılan “evet”tir. # # # ## KerberosTicketCleanup ################################ # # # Dosyanın otomatik olarak sonlandırılıp sonlandırılmayacağını belirtir oturumun sonunda # # kullanıcı bilet önbelleğiyle. # # Varsayılan “evet”tir. # # # ############################################ ############# ################# Yönlendirme seçenekleri ################## # ## ############################################ ## ############# # # ## AllowAgentForwarding ############################# #### ### # # # Yeniden yönlendirmeye izin verilip verilmeyeceğini veya devre dışı bırakılacağını belirtir # # ssh-agent. Varsayılan "evet"tir, yani izin ver. # # Yeniden yönlendirmeyi devre dışı bırakmanın kullanıcılar # # kadar güvenliği artırmayacağını belirtmekte fayda var ayrıca # # kabuk erişimi reddedilecek, çünkü her zaman kendi aracı analoglarını # # yükleyebilecekler. # # # ## AllowTcpForwarding ##################### # # ############### # # # TCP yeniden yönlendirmenin etkinleştirilip etkinleştirilmeyeceğini belirtir. # # Varsayılan "evet"tir, yani izin ver. Her ikisinin de # # olduğunu belirtmek gerekir. AllowAgentForwarding durumunda, # # yeniden yönlendirmenin devre dışı bırakılması, # # kullanıcı konsol erişimine sahip olduğu sürece güvenliği artırmayacaktır çünkü # # benzerlerini kurabilirler. # # # # # ## GatewayPorts ######### ## ############################### # # Uzak ana bilgisayarların # # iletilen bağlantı noktalarına erişmesine izin verilip verilmeyeceğini belirtir. Varsayılan olarak sshd, yalnızca yerel # # geridöngü arayüzünde iletilen bağlantı noktalarına yapılan bağlantılar için # # dinler. Bu, diğer uzak # # ana bilgisayarların iletilen bağlantı noktalarına bağlanmasını engeller. Sshd'nin # # bunu yapmasına izin vermek için # # GatewayPort'ları kullanabilirsiniz. Yönerge 3 değer alabilir: # # "no" - yalnızca geridöngü. # # "evet" - herhangi bir adres. # # "istemci tarafından belirtilen" - istemci tarafından belirtilen adresler. # # # ## İzinAçık ########################################## ## # # # TCP bağlantı noktası yönlendirmeye nerede izin verildiğini belirtir. # # Bir yeniden yönlendirme belirtmek aşağıdaki biçimlerden # # birini almalıdır: # # PermitOpen host:port # # PermitOpen IPv4_addr:port # # PermitOpen :port # # Boşluklarla ayırarak birden fazla giriş belirtilebilir. # # “Herhangi biri” argümanı, bağlantı noktası yönlendirmedeki tüm # # kısıtlamaları kaldırmak için kullanılabilir. Varsayılan olarak herhangi bir # # yönlendirmeye izin verilir. # # # ## PermitTunnel ######################################### # # # Ayar cihazlarının yeniden yönlendirilmesine izin verilip verilmediğini belirtir. # # Değerler alabilir: # # “evet” # # “noktadan noktaya” (3. ağ katmanı) # # “ethernet” (2. ağ katmanı) # # “hayır” # # # “evet” değeri hem “noktaya” izin verir -noktaya” # # ve “ethernet” aynı anda. Varsayılan "hayır"dır. # # # ############################################ ############# ################# Günlüğe kaydetme seçenekleri ################# ### ############################################ ## ############# # # ## SyslogFacility ############################# ## ########## # # # Mesaj yazmak için günlük nesne kodunu # # sshd'den syslog'a ayarlar. Olası değerler: # # DAEMON # # USER # # AUTH # # LOCAL0 # # LOCAL1 # # LOCAL2 # # LOCAL3 # # LOCAL4 # # LOCAL5 # # LOCAL6 # # LOCAL7 # # Varsayılan değer AUTH'dur. # # # SyslogFacility AUTH # # ## LogLevel ###################################### ######## # # # Sshd günlüğünün ayrıntı düzeyini ayarlar. # # Olası seçenekler: # # SESSİZ # # SESSİZ # # ÖLÜMCÜL # # HATA # # BİLGİ # # Ayrıntı # # DEBUG # # DEBUG1 # # DEBUG2 # # DEBUG3 # # Varsayılan, BİLGİ'dir. # # DEBUG ve DEBUG1 birbirine eşdeğerdir. # # DEBUG2 ve DEBUG3, hata ayıklama # # çıktısının en yüksek seviyelerini ayarlar. DEBUG düzeyinde oturum açmak # # kullanıcının gizliliğini tehdit eder ve önerilmez. # # # LogLevel BİLGİSİ # # ######################################## ################# ################## X11 yönlendirmesi ############ ######## ######################################## # ################## # # ## X11Yönlendirme ######################### ### ################ # # # X11 grafik alt sistemi # # yönlendirmenin etkin olup olmadığını gösterir. “Evet” veya “Hayır” değerlerini alabilir. # # Varsayılan “hayır”dır. # # Dikkat - basit X11 yönlendirmesini etkinleştirmek # # hem sunucu hem de istemciler için büyük bir risktir, çünkü # # böyle bir yönlendirmede, sshd proxy ekranı # # herhangi bir adresten gelen bağlantıları kabul eder. # # X'in yönlendirme sunucusuna erişimi kısıtlamak için X11UseLocalhost yönergesini kullanın. # # yönlendirmeyi devre dışı bırakmanın # # kullanıcının X11'i yeniden yönlendiremeyeceğini garanti etmeyeceğini belirtmekte fayda var, çünkü # # konsol erişimine sahip olduklarında her zaman kendi # # yönlendiricilerini yüklerler. UseLogin # # yönergesi etkinleştirilirse X11 yönlendirmesi # # otomatik olarak devre dışı bırakılır. # # # X11Yönlendirme evet # # ## X11Localhost'u Kullan ###################################### # # # # Sshd'nin # # X11 iletiminin kapsamını yerel bir geridöngü adresine sınırlaması mı gerektiğini yoksa # # herhangi bir adrese izin vermesi gerektiğini belirtir. Varsayılan olarak sshd # #, X11 yönlendirme sunucusunu # # yerel adresine ayarlar ve DISPLAY ortam değişkeni # #'nin ana bilgisayar adı kısmını “localhost” olarak ayarlar. Bazı eski X11 istemcilerinin # # bu ayarlarla çalışmayabileceğini belirtmekte fayda var. Varsayılan "evet"tir, yani. yönlendirme # #, localhost tarafından sınırlandırılmıştır, "hayır" değeri # # kısıtlamalarını devre dışı bırakır. # # # ## XAuthLocation ######################################### # # # Xauth programının tam yolunu belirtir. # # Varsayılan: /usr/bin/X11/xauth. # # # ## X11DisplayOffset ##################################### # # # # # # X11 yönlendirmesi olarak sshd tarafından kullanılabilen ilk ekranın numarasını belirtir. Bu, yönlendirilen X'lerin # # gerçek olanlarla çakışmaması için # # yapılır. Varsayılan 10'dur. # # # X11DisplayOffset 10 # # # ################################### ## ###################### ################### Çeşitli seçenekler ##### ## ################## ############################ ##### ########################### # # ## GirişGraceTime ############ ####### ######################### # # # # # Sunucunun kullanıcının bağlantısını kesemediği durumlarda # # # # tatmin edici bir şekilde giriş yapın. Değer 0 - # # kullanıcısının süresiz olarak oturum açmasına izin verir. Varsayılan 120'dir (saniye). # # # LoginGraceTime 120 # # ## MaxAuthTries ###################################### ### #### # # # Bağlantı başına izin verilen maksimum kimlik doğrulama girişimi sayısını # # belirtir. # # Başarısız denemelerin sayısı belirtilen değerin # # yarısını aştığında, sonraki tüm denemeler # # günlüğe kaydedilecektir. Varsayılan değer 6'dır. # # # ## MaxSessions ################################### ####### # # # Her ağ bağlantısı için maksimum eşzamanlı bağlantı sayısını # # belirtir. Varsayılan 10'dur. # # # ## MaxStartups ###################################### ###### # # # Sshd'ye eşzamanlı # # yetkisiz bağlantıların maksimum sayısını belirtir. # # bağlantı sayısı sınırı aşarsa, mevcut # # bağlantı başarılı yetkilendirme # # ile tamamlanana veya # # LoginGraceTime yönergesinde belirtilen süre sona erene kadar tüm ek # # bağlantılar kesilecektir. Varsayılan değer 10'dur. # # İsteğe bağlı olarak, # # ile üç değeri parametre olarak belirterek, # # ile iki nokta üst üste “başlangıç:hız:tam” (örneğin: "10:30) ayırarak bağlantıları erken sıfırlanacak şekilde ayarlayabilirsiniz. :60"). # # sshd, # # “oran/100”e eşit olasılıkla bir bağlantı girişimini reddedecektir (ör. örneğimizde -% 30, eğer zaten # # "başlat" (10) yetkisiz bağlantı varsa. # # Olasılık doğrusal olarak artar ve yetkisiz # # bağlantıların sayısı "dolu"ya (60) ulaşırsa # # bağlantı girişimi reddedilir. # # # ## Sıkıştırma ######################################### # # # # Veri sıkıştırmanın etkin olup olmadığını gösterir. # # "evet" olabilir - sıkıştırma etkindir. # # "gecikmeli" - kullanıcının kimliği başarıyla doğrulanıncaya kadar # # sıkıştırma ertelenir. # # "hayır" - sıkıştırma devre dışı bırakıldı. # # Varsayılan "gecikmeli"dir. # # # ## UseLogin ######################################### #### # # # Etkileşimli bir oturum için # # oturum açmanın kullanılıp kullanılmayacağını belirtir. Varsayılan değer hayır". # # Oturum açmanın hiçbir zaman uzaktan komutları # # yürütmek için kullanılmadığını belirtmekte fayda var. Ayrıca # # oturum açmanın X11Forwarding yönergesini # # kullanmayı imkansız hale getireceğini unutmayın, çünkü oturum açma xauth ile # # ne yapacağını bilmez. # # UsePrivilegeSeparation yönergesi etkinleştirilirse, # # yetkilendirme sonrasında devre dışı bırakılacaktır. # # # ## UsePrivilegeSeparation ################################### # # # Sshd'nin olup olmadığını belirtir ayrıcalıkları ayırmalıdır. Eğer # # ise, gelen ağ trafiği için öncelikle ayrıcalıksız bir alt # # süreci oluşturulacaktır. Başarılı # # yetkilendirmeden sonra, oturum açan kullanıcının # # ayrıcalıklarına sahip başka bir işlem oluşturulacak. # # ayrıcalık ayrımının temel amacı erişim haklarının kötüye kullanılmasını önlemektir. # # Varsayılan değer "evet" dir". # # # UsePrivilegeSeparation evet # # ## StrictModes ##################################### ### ##### # # # Kullanıcının oturum açmasına izin vermeden # # önce sshd'nin kullanıcı klasörlerinin ve dosyalarının erişim ve # # sahiplik modlarını kontrol etmesi gerekip gerekmediğini belirtir. Bunun nedeni genellikle # # yeni başlayanların dosyalarını herkes tarafından # # yazılabilir hale getirmesidir. Varsayılan "evet"tir. # # # StrictModes evet # # ## AcceptEnv ###################################### ####### # # # İstemci tarafından # # iletilen hangi ortam değişkenlerinin kabul edileceğini belirtir. İstemcideki SendEnv seçeneğine bakın. # # Değişkenlerin iletilmesinin yalnızca # # ssh2 protokolü için mümkün olduğunu belirtmekte fayda var. Değişkenler isme göre belirtilir, # # maskeler kullanılabilir ('*' ve '?'). # # birden çok değişkeni boşluklarla ayırarak belirtebilir veya AcceptEnv'i # # birden çok satıra bölebilirsiniz. Dikkatli olun; bazı # # ortam değişkenleri, # # yasaklı kullanıcı ortamlarını atlamak için kullanılabilir. Bu # # direktifini dikkatli kullanın. Varsayılan olarak hiçbir # # kullanıcı ortamı değişkeni kabul edilmez. # # # AcceptEnv LANG LC_* # # ## KullanıcıOrtamına İzin Ver ################################# # # # Sshd'nin # # ~/.ssh/environment ve # # ~/.ssh/authorized_keys içindeki ortam= seçeneğini kabul edip etmeyeceğini belirtir. Varsayılan "hayır"dır. Ortam işlemeyi etkinleştirmenin # # kullanıcıya, # # LD_PRELOAD gibi mekanizmalar kullanan bazı # # yapılandırmalardaki kısıtlamaları atlama yeteneği verebileceğini belirtmekte fayda var. # # # # # ## PidFile ####################################### # ####### # # # SSH arka plan programının işlem kimliğini # # (işlem kimliği, PID) içeren bir dosyayı belirtir. # # Varsayılan - /var/run/sshd.pid # # # # # ## PrintLastLog ############################ # # ############## # # # # # Kullanıcı etkileşimli olarak oturum açtığında sshd'nin son oturumun tarih ve saatini # # görüntüleyip görüntülemeyeceğini belirtir. # # Varsayılan “evet”tir. # # # PrintLastLog evet # # ## PrintMotd ####################################### ####### # # # Bir kullanıcı etkileşimli olarak oturum açtığında sshd'nin /etc/motd # # görüntüleyip görüntülemeyeceğini belirtir. Bazı # # sistemlerde (örneğin Ubuntu) bu bilgi aynı zamanda # # kabuk tarafından da görüntülenir. # # Varsayılan değer "evet" dir". # # # PrintMotd no # # ## Banner ##################################### ########## # # # Hangi dosyanın, # # kimlik doğrulama prosedüründen ÖNCE kullanıcıya # # gösterileceğini belirten bir metin başlığı içerdiğini belirtir. Bu seçenek yalnızca ssh2 protokolü için kullanılabilir.# # Varsayılan olarak - hiçbir şey göstermez. # # Ubuntu'da, issue.net dosyası Ubuntu (versiyon) ifadesini içerir, # # örneğin, karmik için "Ubuntu 9.10"dur. # # olası saldırganların yönünü şaşırtmak için kullanılabilir mi, # # oraya yazarak, örneğin, "D-Link İnternet Yönlendiricim" =) # # # Banner /etc/issue.net # # ## ChrootDirectory ###### ##### ############################## # # # Belirtilmişse, # # yolunun chroot edilmesi sağlanır kimlik doğrulamasından sonra. Yol ve tüm # # içerikleri, süper kullanıcının sahip olduğu # # klasörlere karşılık gelmeli ve diğer kullanıcılar tarafından yazılabilir # # olmamalıdır. # # Yol, # # kimlik doğrulama işlemi sırasında değiştirilen etiketleri içerebilir: # # %% - "%" harfiyle değiştirilir # # %h - kimliği doğrulanmış kullanıcının # # ana dizini ile değiştirilir # # %u - kimliği doğrulanmış kullanıcının adı ile değiştirilir # # chroot -klasör, kullanıcı oturumu için gerekli tüm dosyaları ve # # klasörleri içermelidir. Etkileşimli bir # # oturum en azından şunları gerektirir: # # bir kabuk, genellikle sh # # /dev'deki temel aygıtlar örneğin: # # null, sıfır, stdin, stdout, stderr, arandom ve tty # # kullanarak bir veri aktarım oturumu için sftp no # # dahili # # sftp sunucusu işlemi kullanılıyorsa ek ayarlar gerekir. # # daha fazla bilgi için Alt Sistem'e bakın. Varsayılan olarak chroot gerçekleştirilmez. # # # ## ForceCommand ########################################## # # # Belirtilen komutun yürütülmesine neden olur. # # istemci tarafından gönderilen veya # # ~/.ssh/rc'ye yazılan komutları yok sayar. Komut, kullanıcının # # kabuğundan -c seçeneğiyle çağrılır. Bir kabuğu, # # komutunu veya alt sistemi başlatmak için uygundur. # # Eşleştirme bloğunun içinde en kullanışlı olanıdır. İstemci tarafından orijinal olarak verilen komut # #, SSH_ORIGINAL_COMMAND ortam değişkeninde saklanır. # # "dahili-sftp" komutunu belirtirseniz, ChrootDirectory yönergesinde açıklanan ek # # dosya ve klasörlere ihtiyaç duymayan # # dahili sftp sunucusu başlatılacaktır. # # # ## Alt sistem ######################################### ### # # # Harici bir alt sistemi tanımlar ve yapılandırır (örneğin # # dosya aktarım arka planı). # # Argümanlar, # # alt sistem talep edilirken yürütülecek isim ve komuttur (olası # # argümanlarla birlikte). Sftp-server komutu “sftp” - # # dosya aktarım alt sistemini başlatır. Ek olarak, alt sistem olarak # # “dahili-sftp”yi belirleyebilirsiniz; bu, dahili sftp sunucusunu # # başlatacaktır. Bu, # # ChrootDirectory yönergesini kullanırken # # yapılandırmasını büyük ölçüde basitleştirebilir.Varsayılan olarak hiçbir alt sistem # # çağrılmaz. Yalnızca ssh2 protokolüyle ilgilidir. # # # Alt sistem sftp /usr/lib/openssh/sftp-server # # ############################### ############################ ##################### Kibrit Engellemek ############################ ##################### ## ################################### # # # Özellikle sonuna taşıdım Dosyayı daha kullanışlı hale getirmek için # # Eşleşme kurallarını yaz. # # MadKox. # # # # Match yönergesi koşullu # # bloğun başlangıcını temsil eder. # # Eşleştirme satırında belirtilen tüm kriterler karşılanırsa, bloğun sonraki satırlarındaki yönergeler yürütülür, # #, # # sshd_config dosyasındaki genel yönergelerin değerlerinin atlanmasına izin verir. # # Maç direktifi için kriterler. Bir blok, # # satırından sonra kriter (Eşleştirme - satırlar) ile bir sonraki # # eşleştirme satırına veya dosyanın sonuna kadar gelen tüm satırlar olarak kabul edilir. Match yönergesinin argümanı bir veya # # birden fazla kriter girişi çiftinden oluşur. Olası giriş türleri: # # Kullanıcı # # Grup # # Ana Bilgisayar # # Adres # # Girişler ya tek değer # # (örneğin Kullanıcı=kullanıcı) ya da virgülle ayrılmış birden çok değer # # içerebilir (Kullanıcı=kullanıcı1) ,kullanıcı2). ssh_config dosyasının # # DESENLER bölümünde açıklanan normal ifadeler # # de kullanılabilir. # # Adres kriterindeki girişler, CIDR # # (Adres/Maske Uzunluğu, örneğin “192.0.2.0/24” veya # # “3ffe:ffff::/32”) notasyonundaki adresleri içerebilir. Sağlanan # # maske uzunluğunun adresle eşleşmesi gerektiğini ve adres için çok # # uzun/kısa çalışmayacağını belirtmekte fayda var. # # Match, yalnızca # # belirli bir dizi yönergeyi yönerge olarak kullanabilir: # # AllowTcpForwarding # # Banner # # ChrootDirectory # # ForceCommand # # GatewayPorts # # GSSAPIAuthentication # # Host BasedAuthentication # # KbdInteractiveAuthentication # # KerberosAuthentication # # MaxAuthTries # # MaxSessions # # ŞifreKimlik Doğrulama # # İzinAçık # #RootOturuma İzin Ver # # RhostsRSAAuthentication # # RSAAuthentication # # X11DisplayOffset # # X11Forwarding # # X11UseLocalHost #

    Yukarıdaki metni kendi sshd_config dosyanıza kopyalayabilir ve daha sonra yapılandırma için kullanabilirsiniz.

    Yanlış yapılandırılmış bir SSH sunucusu, kendi başına, sistem güvenliğinde büyük bir güvenlik açığıdır, çünkü olası bir saldırgan, sisteme neredeyse sınırsız erişim elde etme fırsatına sahiptir. Ek olarak, sshd'nin kullanılabilirliği ve güvenliği artırmak için etkinleştirilmesi tavsiye edilen birçok ek yararlı seçeneği vardır.

    Bağlantı Noktası, DinlemeAdresi ve Adres Ailesi

    Bu üç parametre, sunucunuzun gelen bağlantıları hangi bağlantı noktalarını ve adresleri dinleyeceğini belirler. İlk olarak, mümkünse, işlenen adres ailesini gerçekten kullanılanlarla sınırlamak mantıklıdır; örneğin, yalnızca IPv4 kullanıyorsanız, IPv6'yı devre dışı bırakın veya tam tersi. Bu, örneğin AdresFamily parametresi kullanılarak yapılabilir (IPv4'e izin vermek ve IPv6'yı reddetmek için):

    AdresAile inet

    İkinci olarak, sshd'nin dinlediği standart bağlantı noktasını (22) değiştirmeniz önerilir. Bunun nedeni, çok sayıda ağ tarayıcısının sürekli olarak 22 numaralı bağlantı noktasına bağlanmaya çalışması ve en azından veritabanlarından kaba kuvvet kullanarak oturum açma bilgilerini/şifreleri kullanarak erişim elde etmeye çalışmasıdır. Parola kimlik doğrulamasını devre dışı bırakmış olsanız bile, bu girişimler günlükleri büyük ölçüde tıkar ve (büyük miktarlarda) ssh sunucusunun hızını olumsuz yönde etkileyebilir. Herhangi bir nedenle standart bağlantı noktasını değiştirmek istemiyorsanız, kaba kuvvetlerle mücadele etmek için fail2ban ve MaxStartups gibi yerleşik yardımcı programlar gibi çeşitli harici yardımcı programları kullanabilirsiniz.
    Bağlantı noktasını, Port yönergesini kullanarak tüm arabirimler için mutlak bir değer olarak veya ListenAddress yönergesini kullanarak her arabirim için belirli bir değer olarak ayarlayabilirsiniz. Örneğin:

    Bağlantı noktası 2002

    DinlemeAdresi 192.168.0.1:2003 DinlemeAdresi 192.168.1.1:2004

    Süper kullanıcı için uzaktan erişimi reddet

    Varsayılan olarak, root erişimi şifre ile yasaktır (anahtarla mümkündür) - PermitRootLogin seçeneği şifresiz olarak ayarlanmıştır. Ancak, Ubuntu'da varsayılan olarak sistem kurulumu sırasında eklenen kullanıcının tüm idari görevleri sudo aracılığıyla çözme yeteneğine sahip olduğu göz önüne alındığında, sisteme ssh aracılığıyla kök erişim yeteneği oluşturmak mantıksız görünüyor (anahtar kimlik doğrulamasıyla bile). Tamamen kapatılması tavsiye edilir. bu seçeneği kullanın veya yalnızca zorunlu komutlar modunda kullanın. Kök erişimini şu şekilde devre dışı bırakabilirsiniz:

    İzinKökGiriş no

    Şifre kimlik doğrulaması

    Varsayılan olarak izin verilen parola kimlik doğrulaması, pratik olarak sshd'deki en ilkel yetkilendirme yöntemidir. Bir yandan bu, yeni kullanıcıların yapılandırmasını ve bağlantısını kolaylaştırır (kullanıcının yalnızca sistem kullanıcı adını/şifresini bilmesi gerekir), diğer yandan parola her zaman tahmin edilebilir ve kullanıcılar genellikle karmaşık ve uzun parolalar oluşturmayı ihmal eder. . Özel botlar sürekli olarak İnternetten erişilebilen ssh sunucularını tarar ve veritabanlarından kaba kuvvet kullanarak oturum açma bilgileri/şifreler kullanarak bu sunucularda oturum açmaya çalışır. Parola kimlik doğrulamasının kullanılmaması önemle tavsiye edilir. Bunu şu şekilde devre dışı bırakabilirsiniz:

    Şifre Doğrulama hayır

    Herhangi bir nedenden dolayı hâlâ parola kimlik doğrulamasını kullanmak istiyorsanız kimsenin boş parolayla oturum açamayacağından emin olun. Bunu yapmak için PermitEmptyPasswords yönergesini ayarlayın:

    İzin VerBoşŞifreler hayır

    Protokoller SSH1 ve SSH2

    Daha önce de belirtildiği gibi sshd, SSH1 ve SSH2 protokolleriyle çalışabilir. Ancak güvenli olmayan SSH1'in kullanılması kesinlikle önerilmez. Sshd'yi yalnızca SSH2 protokolüyle çalışmaya şu şekilde zorlayabilirsiniz:

    SSH2 RSA anahtarlarına dayalı kimlik doğrulama

    En çok tercih edilen yetkilendirme yöntemi SSH2 RSA anahtarlarına dayalı kimlik doğrulamadır. Bu yöntemle kullanıcı kendi tarafında, biri gizli, diğeri genel olmak üzere bir çift anahtar oluşturur. Genel anahtar sunucuya kopyalanır ve kullanıcının kimliğini doğrulamak için kullanılır. Anahtar çifti oluşturma ve bunların sunucuya nasıl yerleştirileceği hakkında daha fazla bilgi için SSH istemcisinin açıklamasına bakın. Genel anahtar kimlik doğrulamasını şu şekilde etkinleştirebilirsiniz:

    Pubkey Kimlik Doğrulaması evet

    Sunucu, kullanıcının genel anahtarını nerede arayacağını bilmelidir. Bunun için özel bir yetkili_anahtarlar dosyası kullanılır. Sözdizimi aşağıdaki gibi olabilir:

    # Yorumlar yalnızca yeni bir satıra yazılır # yetkili_anahtarlar dosyasındaki girişlerin genel görünümü # [seçenekler] anahtar_türü (ssh-rsa veya ssh-dss) çok_uzun_dize_sıradan adam için anlaşılmaz [giriş@ana bilgisayar] ssh-rsa AAAAB3Nza...LiPk == [e-posta korumalı] from = "*.sales.example.net,!pc.sales.example.net" ssh-rsa AAAAB2...19Q== [e-posta korumalı] command = "dump /home", no-pty, no-port-forwarding ssh-dss AAAAC3...51R== example.net izinopen = "192.0.2.1:80", permitopen = "192.0.2.2:25" ssh -dss AAAAB5...21S== tünel = "0",command = "sh /etc/netstart tun0" ssh-rsa AAAA...== [e-posta korumalı]

    Anahtarlarla birlikte paylaşılan bir dosya veya her kullanıcı için bir dosya belirtebilirsiniz. İkinci yöntem daha kullanışlı ve güvenlidir çünkü öncelikle her kullanıcı için farklı tuş kombinasyonları belirleyebilir ve ikinci olarak kullanıcının genel anahtarına erişimi sınırlayabilirsiniz. AuthorizedKeysFile yönergesini kullanarak anahtarları olan bir dosya belirleyebilirsiniz:

    AuthorizedKeysFile %h/.ssh/my_keys

    şema kullanıcısı için - dosya
    veya

    AuthorizedKeysFile /etc/ssh/authorized_keys

    paylaşılan bir dosyaya sahip bir şema için. Varsayılan olarak SSH istemcisi anahtarları ~/.ssh/authorized_keys dosyasında arar.

    Güvenlik hakkında daha fazla bilgi

    Ek ayarlar

    Kullanıcılar ve gruplar.

    Sunucunuzda "yaşayan" çok sayıda kullanıcınız varsa ve bunlardan yalnızca birkaçına ssh aracılığıyla erişime izin vermek istiyorsanız DenyUsers, AllowUsers, DenyGroups ve AllowGroups yönergelerini kullanabilirsiniz. Bu yönergeler hakkında daha fazla bilgi için sshd_config örneğindeki açıklamalara bakın.

    Bağlantı Durumu Seçenekleri

    Varsayılan olarak, bağlantı durumunu belirleme yöntemleri arasında yalnızca TCP bağlantı kontrol yöntemi etkindir - TCPKeepAlive, ancak sshd bağlantı durumlarını daha rahat ve güvenli yollarla belirleyebilir. Daha fazla ayrıntı için sshd_config örneğindeki ilgili bölüme bakın.

    Verim. MaxStartup'lar

    Bağlantı Noktası Yönlendirme

    X11 yönlendirmesi

    Sunucudaki /etc/ssh/sshd_config dosyasında parametreyi ayarlayın (varsayılan olarak etkindir):

    ForwardX11 evet

    İstemcide, /etc/ssh/ssh_config dosyasındaki parametreleri ayarlayın (varsayılan olarak devre dışıdır):

    ForwardAgent evet ForwardX11 evet

    İstemcide şu şekilde çalıştırabilirsiniz: ssh yurauname@serverip firefox. Veya önce ssh yurauname@serverip adresine gidin ve ardından örneğin sudo synaptic komutunu çalıştırın.

    SFTP

    sshd varsayılan olarak yerleşik bir SFTP sunucusuna sahiptir. SFTP (SSH Dosya Aktarım Protokolü) - Dosyaları aktarmak için SSH protokolü. Güvenilir ve güvenli bir bağlantı üzerinden kopyalamak ve diğer dosya işlemlerini gerçekleştirmek için tasarlanmıştır. Kural olarak bağlantıyı sağlayan temel protokol olarak SSH2 protokolü kullanılır. SFTP desteğini etkinleştirmek için satırı sshd_config'e ekleyin

    Alt sistem sftp /usr/lib/openssh/sftp-server

    Varsayılan olarak SFTP desteği etkindir.

    Kriterlerin kullanılması. Eşleşme direktifi

    SSH istemcisi kurma

    Anahtar kullanarak giriş yapmak en güvenli yöntem olarak kabul edilir ve çoğu durumda bu özellik sunucu tarafında etkinleştirilir, dolayısıyla onu kullanmak için hiçbir süper kullanıcı hakkına gerek yoktur. İstemci makinesinde bir anahtar oluşturuyoruz:

    ssh-keygen -t rsa

    Anahtar dosyayı korumak için bir şifre girmemiz isteniyor (dosyanın yanlış ellere geçmesi durumunda bunun yararlı olduğu ortaya çıkıyor). Eğer scriptleri SSH üzerinden çalıştıracaksak o zaman boş bırakıyoruz. komutuyla public anahtarı sunucuya aktarıyoruz.

    Ssh-copy-id -i ~/ .ssh/ id_rsa.pub user@ sunucusu

    İşte bu, içeri girebilirsiniz.

    Ssh standart olmayan bir bağlantı noktasında çalışırken:

    Ssh-copy-id -i ~/ .ssh/ id_rsa.pub "-p bağlantı noktası kullanıcı@sunucu"

    Bir hata oluşursa: Hatalı bağlantı noktası "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys"

    parametreleri tırnak içine almayı deneyin:

    Ssh kopya kimliği "-i /home/user/.ssh/id_rsa.pub "-p port user@server""

    Uzak bir sisteme bağlanırken ekran yardımcı programını kullanmak uygundur.

    Nautilus'ta uzak bir ssh dizini kurma

    Sshfs kullanarak uzak bir dizini bağlama

    Uzak dizini yerel dizine bağlama

    sshfs user@ hostingserver.ru:/ home/ userdir ~/ sshfsdir

    Bağlantıyı kaldırma

    Fusermount -u ~/ sshsfdir

    SSH takma adları

    Farklı erişim parametrelerine sahip birden fazla sunucu kullanıldığında (standart dışı bağlantı noktası, uzun ana bilgisayar adı, yerel olanın dışında oturum açma vb.), bazen tüm bağlantı ayarlarını her seferinde yeniden girmek sıkıcı olabilir. Bunu kolaylaştırmak için takma adlar kullanabilirsiniz.

    Ayarlar, tek bir kullanıcı için ~/.ssh/config dosyasında ve tüm kullanıcılar için genel olarak /etc/ssh/ssh_config dosyasında saklanır.

    Örnek yapılandırma. Birden fazla sunucu tanımlanabilir. Daha fazla ayrıntı adam ssh_config(karıştırılmaması gereken sshd_config)

    Ana Bilgisayar Takma Adı # Rastgele ana bilgisayar adı Ana Bilgisayar Adı 1.2.3.4 # Hem IP hem de ana bilgisayar adını belirtebilirsiniz (DNS çalışıyorsa) Kullanıcı Kullanıcı Adınız # Kullanıcı yerel kullanıcıyla eşleşmiyorsa Bağlantı Noktası SSHPort'unuz # Standart olmayan bir bağlantı noktasıysa

    Bundan sonra şu komutla sunucuya bağlanabilirsiniz.

    ssh Takma Ad

    ssh aracısı

    Bağlantı sorunlarını teşhis etme

      Bağlantı günlüğü analizi:

    ssh -vvv kullanıcı @ ana bilgisayar

      İstemci ve sunucu yapılandırma dosyalarının analizi.

    Yapılandırma dosyalarının konumu şurada bulunabilir:

    Adam ssh adam sshd

    Akıllı kartları kullanma

    1. Windows + Putty SC'deki istemci bölümünün yanı sıra bir sertifika oluşturma ve ortak anahtarı dışa aktarma, web sitesinde açıklanmaktadır: http://habrahabr.ru/post/88540/ Orada açıklanan Key Manager eklentisi yalnızca Firefox'un eski sürümlerinde mevcuttur. Windows için sürüm 3.5'te test edilmiştir. Eklentiye doğrudan bağlantı: https://addons.mozilla.org/ru/firefox/addon/key-manager/

    2. Sunucunun hazırlanması. Sshd yapılandırmanızın ortak anahtarlar kullanılarak kimlik doğrulamasına izin verdiğinden emin olmanız gerekir. Bunun için “sshd_config” dosyasında “PubkeyAuthentication” parametresinin değerini “yes” olarak belirtmeniz gerekiyor. Daha sonra daha önce elde ettiğimiz public anahtarımızı (tek satırda) “~/.ssh/authorized_keys” dosyasına ekliyoruz. Lütfen “.ssh/authorized_keys” dosyasının, daha sonra genel anahtarı kullanarak oturum açacak olan kullanıcının ana dizininde bulunduğunu unutmayın.

    3. Linux'ta istemci kısmı. OpenSSH paketini parametreler olmadan yeniden oluşturmanız gerekecektir. Yalnızca dizin öneklerinin belirtilmesi önerilir; örneğin –prefix=/usr. Ayrıca yapılandırma dosyalarının /usr/etc içinde olacağını da unutmayın. Başlamadan önce şu paketlere ihtiyacınız var: opensc-lite-devel, zlib-devel, openssl-devel. Akıllı kart sürücüsünü yükleyin. Kolaylık sağlamak için, ssh_config yapılandırmasında (sshd_config ile karıştırılmamalıdır), pkcs kitaplığının yolunu belirtin: PKCS11Provider=<путь к библиотеке>

    4. İstemcide ssh user@host komutunu çalıştırın. Akıllı kart (belirteç) bağlıysa, sizden bir şifre istenecek ve SSH oturumunda oturum açacaksınız.

    Kullanım sırasında olası sorunlar

    Ssh sunucusuyla bir terminalde çalışırken, birçok düzenleyicide düzeltmeleri kaydetmek için kullanılan olağan tuş kombinasyonu Ctrl + S, yüzeysel olarak oturumun dondurulmasına benzeyen XOFF komutunun yürütülmesine yol açacaktır. Ancak öyle değil. Sunucu, giriş karakterlerini ve komutlarını kabul etmeye devam eder ancak bunları ekranda görüntülemez. Bu durumdan kurtulmak için Ctrl + Q kombinasyonunu kullanarak XON modunu tekrar açmanız yeterlidir.

    Bağlantılar

    Yani, kullanıcı1 hem kendisi için - /home/user1/.ssh/keys dosyasında) hem de başka bir kullanıcı için kaydedilebilir; bu, bilgisayarından hem "kendi altında" hem de "başka" altında oturum açmasına olanak tanır.

    SSH (Secure Shell), uzaktan sunucu yönetimi ve TCP şifreli bağlantılar üzerinden veri aktarımı için tasarlanmış bir ağ protokolüdür. Günümüzde çoğu barındırma hizmeti, hatta sanal olanlar bile, hem FTP hem de SSH aracılığıyla erişim sağlamaktadır. Bence bu harika, SSH'nin kullanımı çok daha kullanışlı ve daha güvenli.

    SSH'yi ayarlama

    Kurulum, Debian, Ubuntu'da özel bir sunucu olan VDS, VPS için gerçekleştirilecektir. Yapılandırma dosyası burada bulunur: /etc/ssh/sshd_config.conf
    Düzenli bir hostinginiz varsa, her şeyin olması gerektiği gibi yapılandırılması gerekir, bölüme gidin.

    Varsayılan olarak, SSHD arka plan programının (üzerinde değişiklik yaptığımız şey budur) herhangi bir ayara ihtiyacı yoktur ve düzgün çalışır. İstenmeyen kişilerin sunucuya erişimini sınırlamak için sadece birkaç küçük değişiklik yapacağız.

    Yapılandırma dosyasında yanlış değişiklikler yapılmasının bir sonucu olarak, ssh yoluyla sunucuya erişiminizi kaybedebilirsiniz; bu nedenle, sunucuya erişmek için örneğin ISPManager kontrol panelini kullanmak gibi alternatif seçeneklerinizin olduğundan emin olun.

    SSH erişimi nasıl kısıtlanır

    Tüm değişiklikler /etc/ssh/sshd_config dosyasında yapıldı
    Değişikliklerin etkili olması için şunları yapmalısınız:

    Bağlantı noktasını değiştir

    Bağlantı noktası 9724

    Artık yetkilendirme yaparken standart 22 bağlantı noktası yerine 9724'ü belirtmeniz gerekiyor.
    Yöntem, standart bağlantı noktalarını çalan çoğu basit hacker botuna karşı çok basit ve etkilidir. Burada asıl önemli olan diğer hizmetlerle çakışma yaratmamak ve açıkça kullanılmayan bir numara seçmektir.

    Eski protokolü kullanarak iletişimi devre dışı bırakın

    Burada iletişimin yalnızca v2 protokolü kullanılarak mümkün olduğunu tanımlıyoruz

    Giriş yapmadıysanız kök, tüm konsol komutlarından önce sudo eklemeniz gerekir - bu, şu anlama gelir: Kullanıcıyı Değiştir ve Yap- kullanıcıyı değiştirin ve yapın (onun altında). Örneğin, süper kullanıcı olarak komutları yürütmenize olanak tanır kök.

    Yetkilendirme denemelerinin sayısını azaltın

    MaxAuthDeneme 2

    Şifre denemesi sayısı. Varsayılan 6'dır. Arama başarısız olursa iletişim oturumu sonlandırılır.

    Yetkilendirme bekleme süresini azaltın

    GirişGraceTime 30s

    Varsayılan olarak bir yetkilendirme oturumu 120 saniye sürebilir. Bu süreden sonra biter. Yetkilendirme için 2 dakika çok fazla; tüm bu süre boyunca sunucu bağlantıyı açık tutuyor ki bu da çok mantıksız. Yarım dakika yeterli.

    IP erişimini kapat

    IP kısıtlamalarını ayarlamadan önce, ayarlarda bir hata olması ve ardından kendi IP'nizin yasaklanması durumunda, sunucuya yeniden erişim sağlamanın alternatif bir yoluna sahip olacağınızdan emin olun.

    Sadece erişime ihtiyacınız varsa, en basit ve en güvenilir yol, IP'niz veya dinamikse IP aralığı dışında her yerden erişimi engellemektir.

    1. /etc/hosts.allow dosyasını açın ve buraya SSHD'yi ekleyin: 192.168.1.1

      192.168.1.1 IP'nizdir. Dinamik bir IP'niz varsa, alt ağ maskesiyle bir IP tanımlayın ve IP yerine alt ağınızı yazın, örneğin:

      SSHD: 192.168.0.0/16

    2. /etc/hosts.deny dosyasını açın ve buraya ekleyin: SSHD: ALL

    IP yoluyla erişimi kısıtlamanın başka bir yolu

    Aşağıdaki yönergeyi kullanabilirsiniz:

    İzin Veren Kullanıcılar = *@1.2.3.4

    Burada yalnızca IP 1.2.3.4 için erişime izin veriyoruz

    Anahtarlarla SSH yetkilendirmesi

    Ssh yetkilendirmesini şifre olmadan ayarlamak çok daha güvenli, daha kullanışlı ve doğru olacaktır. Bu amaçla anahtar yetkilendirme kullanılacaktır.

    İşte talimatlar.

    İlk VPS'nizi, hatta belki bir sunucunuzu hemen satın aldınız. Elbette bunu yönetebileceğiniz bir web paneliniz var. Ama sert adminler her zaman konsoldan geçer 😉 Bu nedenle bunu nasıl yapacağımızı öğrenmemiz gerekiyor. Bu dersimizde PuTTY programını kurup, SSH protokolü üzerinden sunucuya bağlanıp, sunucu üzerinde işgal edilen ve boş alanın nasıl belirleneceğini öğreneceğiz.

    SSH protokolü aracılığıyla bir sunucuya bağlanmak için macun programı

    Putty'yi putty.org sitesinden indirin Kendim için “Intel x86'da Windows için - PuTTY: putty.exe” sürümünü indiriyorum.

    Arşivi paketinden çıkarın ve programı başlatın.

    Program penceresi başlatıldıktan sonra böyle görünüyor. Sunucumun IP adresini “Ana Bilgisayar Adı (veya IP adresi)” alanına zaten girdim:

    Sunucunuzun alan adını veya IP adresini girin ve “Aç” butonuna tıklayın. Bir komut istemi penceresi açılır. Bizden kullanıcı adı ve şifre istiyor. Önce kullanıcı adınızı, ardından şifrenizi girin. Dikkat, şifre girerken ekranda karakterler basılmıyor, hatta yıldız işaretleri *** bile basılmıyor. Bu nedenle şifreyi sanki körü körüne giriyoruz. Girin ve Enter'a basın. Şifre doğru girildiyse sunucu yönetim konsoluna giriş yapacaksınız. Son oturum açma zamanını ve işletim sistemiyle ilgili bilgileri içeren bir satır görüntülenir.

    Konsoldaki komutlar

    özürlü

    df

    Df komutu, bağlı tüm dosya sistemlerinde sunucudaki boş ve kullanılan alan miktarını gösterir.

    du

    du komutu bir klasörün veya dosyanın ne kadar yer kapladığını gösterir.
    Örnek komut:

    Du -h /ev/

    Bu komut /home/ dizininin ne kadar yer kapladığını gösterecektir.

    Bu kadar. SSH ve macun programı aracılığıyla bir sunucuya bağlanmayla ilgili ilk tanışma sona erdi. Bu bilgiyi kullanarak sunucuya gidebilir ve verilerin üzerinde ne kadar yer kapladığını görebilirsiniz.



    
    Tepe