SSH!
SSH tanrı emridir - bence öğrenilecek en değerli genel emirdir. Seçenekler oldukça göz korkutucu olabilir, ancak SSH için sürekli yeni komut satırı seçeneklerini kullanmayı öğrendiğimi sanıyordum. Hepsini bu noktada kullanmış olabilirim.
Ne kadar çok kullanırsanız, o kadar çok şey öğrenirsiniz. İNANILMAZ bazı şeyler yapmak için kullanabilirsiniz.
Not: Tüm bunlar, ssh sunucusunu çalıştırmak dışında, sunucunuzda hiçbir kurulum yapmadan uzaktan yapılabilir.
İnternet üzerinden bir dosya sistemi kurun
SSHFS'de ağda arama
İleri komutlar .
SVN + SSH protokolü, uzaktaki istemciden NO DEAMON üzerinde çalışan bir sunucuya Subversion'dur! SVN komutu sunucuyu ssh kabuğuyla başlatır ve bilgileri mevcut borudan ileri ve geri iletir. Rsync programı aynı şeyi yapar, kendisini SSH ile başlatarak rsync deamon'u bulunmayan bir sunucuya karşı çalışır. Benzer numaralar yapmak için kendi bash dosyalarınızı yazmak kolaydır.
Güvenlik duvarlarından geçmek için zincir
Bunu her zaman evdeki linux sunucumdan mac bilgisayarıma atlamak için kullanıyorum.
Yönlendirme bağlantı noktaları:
Ev güvenlik duvarınızdan sıçrayabileceğinizi ve yönlendiricinizi evde işteyken ev ağınızdan yaptığınız gibi yapılandırabileceğinize kadar, yalnızca orta derecede yararlı görünüyor).
X isteklerini ilet:
Bu başka bir şaşırtıcı. Uzak sisteminizde çalışan bir X sunucusu olsun veya olmasın, bir x-windows programını çalıştırabilirsiniz; pencere yerel ekranınızda belirir. Sadece -X anahtarını kullanın, hepsi bu!
Uzak sunucunuzda çalışan bir X sunucunuzun olması gerekmediğinden, sunucunuzdaki CPU etkisi minimumdur, Windows ve cygwin / X çalıştıran güçlü oyun PC'nizde muazzam uygulamalar sunan bir TINY Linux sunucunuz olabilir.
Tabii ki VI ve EMACS SSH üzerinden çalışıyor, ama ben evde koşarken bazen daha fazlasını istiyorum. Eclipse'in bir kopyasını başlatmak için ssh -X kullanıyorum! Sunucunuz dizüstü bilgisayarınızdan daha güçlüyse, GUI'yi dizüstü bilgisayarınızda oturdurabilirsiniz, ancak derleyiciler sunucunuzda yapılır, bu nedenle sistem yükü hakkında endişelenmeyin.
Toplu iş dosyalarında çalıştır
(yani, diğer sistemlerde "iş yapan" yerel bir toplu iş dosyasını çalıştırın):
Bunu serinletmek için iki şey birleştirilir. Birincisi (daha güvenli) şifreleme anahtarlarını kullanarak şifre taleplerini ortadan kaldırabilmenizdir. İkincisi, SSH CLI'sine bir komut belirleyebilirsiniz. Bunu bazı ilginç şekillerde kullandım - Uzak sunucuda bir derleme başarısız olduğunda, bilgisayarıma SSH koyardım ve bir ses dosyası çalardım).
Çıktıyı uzak komuttan yeniden yönlendirebileceğinizi ve yerel toplu iş dosyanızda kullanabileceğinizi unutmayın, böylece yerel olarak sunucunuzda çalışan bir derlemeyi takip ediyor olabilirsiniz.
Mac'te yerleşik
Hem sunucu hem de istemci hem mac'a hem de linux'a yerleştirilmiştir. Mac ve Ubuntu söz konusu olduğunda, bir sunucuyu etkinleştirmek doğru onay kutusunu bulmak kadar kolaydır.
Bir PC'de cygwin veya cygwin / X kurulumunu yapın (cygwin / X, x-window çıktınızı Linux makinenizden Windows PC'nize iletmenize izin verir - bir X sunucusu kurar)
Önemli İpuçları / config dosyası
Güvenlik duvarınızda asla 22 numaralı bağlantı noktasını kullanmayın. Çok fazla deneme girişiminde bulunacaksınız, buna değmez. Güvenlik duvarınızın sunucunuza farklı bir bağlantı noktası iletmesini sağlayın.
Ssh komutlarınızı önemli ölçüde basitleştirmenize izin veren kapsamlı yapılandırma seçenekleri vardır. İşte işte benim bir örnek:
Host home
hostname billshome.hopto.org
Port=12345
user=bill
LocalForward=localhost:1025 mac:22
"Ssh home" (başka hiçbir şey) yazdığımda yazmışım gibi davranıyor:
ssh -p 12345 bill@billshome.hopto.org
ve daha sonra yerel 1025 portumu sistemimdeki "mac" sistemime iletiyor. Bunun nedeni, dosyama başka bir giriş yapmam:
Host mac
hostname localhost
port=1025
Böylece bir kez "ssh home" yaptım ve hala pencereyi açtım, "ssh mac" yazabiliyorum ve burada çalışan bilgisayar aslında mac'una yönlendirilen kendi 1025 portuna bağlanmaya çalışacak: 22 "öteki komutla, bu yüzden evde Mac'ime firewall ile bağlanacak.
Düzenleme - harika script!
Sevdiğim eski bir senaryoyu kazdım - geri gelmek ve ilgisini çekebilecek biri için buraya göndermek zorunda kaldım. Betik adı "authMe"
#!/bin/bash
if [ ! -f ~/.ssh/id_dsa.pub ]
then
echo 'id_dsa.pub does not exist, creating'
ssh-keygen -tdsa
fi
ssh $1 'cat >>.ssh/authorized_keys' <~/.ssh/id_dsa.pub
Bu komut dosyasını giriş dizininizde varsa ve bağlanabileceğiniz bir ana bilgisayar varsa (ssh aracılığıyla), sonra "./authMe hostName" yazabilirsiniz.
Gerekirse, sizin için bir kamu / özel keypair oluşturacak, sonra diğer makineye ssh açacak ve genel anahtarınızı üzerine kopyalayacaktır (ssh komutu sizi bir parola isteyecektir ...)
Bundan sonra, SSH komutu artık bu uzak sisteme eklerken şifrenizi istememelidir, genel / özel anahtar takımını kullanacaktır.
Uzaktaki bilgisayarınız her zaman güvenli değilse, istendiğinde bir "parola" ayarlamayı düşünmelisiniz.
Ayrıca, ek güvenlik için metin şifrelerine (sadece anahtarlar) izin vermeyecek şekilde ssh sunucusunu uzak uçtan yapılandırmak isteyebilirsiniz.