SSH aracılığıyla sunucuya bağlanmak, *nix sunucularını yönetmek için birincil araçlardan biridir. Çoğu zaman, bir dosyayı uzak bir sunucuya yüklemek veya boşaltmak gerekir, ancak SSH bağlantısı dışında başka bir yol yoktur. Neyse ki, bu Protokolün düzenli işlevlerinden biri, dosyaları güvenli bir bağlantı yoluyla kopyalamaktır. Linux sistemlerinde scp komutunu kullanarak veya Windows işletim sisteminde Putty SSH istemcisinin bir parçası olan pscp.exe'yi kullanarak uygulayabilirsiniz.
Linux İşletim Sistemini Kullanma
-
- Aşağıdaki komutları yürütün:
scp [değiştirici] [kaynak] [hedef_dizin]
- Kaynak veya hedef dizin olarak uzak bir sunucu kullanılıyorsa, aşağıdaki komutları yürütün:
[kullanıcı]@[sunucu]:[dosya_yolu]
- Komutu çalıştırdıktan sonra, uzak sunucu hesabının parolasını girmeniz gerekir.
- Özetlemek gerekirse, yerel dosyayı şu şekilde kopyalayabilirsiniz: /home/user/file.tgz adlı yerel dosyayı aşağıdaki komutu çalıştırarak uzak sunucunun 123.123.123.123 kök kullanıcı ev dizinine kopyalayabilirsiniz:
scp /home/user/file.tgz root@123.123.123.123:/root
- Aynı dosyayı uzak bir sunucudan indirmek için:
scp root@123.123.123.123:/root/file.tgz /home/user
- Aynı anda birden fazla dosya kopyalayabilirsiniz. Bunu yapmak için, onları kaynak olarak eklemelisiniz. Bunları bir boşlukla ayırın - son parametre hedef dizin olarak kabul edilecektir. Örneğin, file1 files.tgz ve file2.tgz dosyalarını yerel dizinden uzak sunucuya yüklemek için şu komutu çalıştırmanız gerekir:
scp file1.tgz file2.tgz root@123.123.123.123:/root
- Dizini kopyalamak için -r komut değiştiricisini kullanmanız gerekecektir. Yerel /home/user/dir dizinini uzak sunucuya kopyalayın:
scp-r /home/user/dir root@123.123.123.123:/root
- SSH sunucusu varsayılan olmayan bir portta çalışıyorsa, -P seçeneğinden yardım almamız gerekir. Eğer 10022 portunu kullanmanız gerekiyorsa:
scp-P 10022 /home/user/file.tgz root@123.123.123.123:/root
- Başka hangi değiştiricileri kullanabileceğinizi öğrenmek için scp'yi parametresiz çalıştırmanız ve yardımı okumanız yeterlidir.
Windows İşletim Sistemini Kullanma
- Windows işletim sistemini ve Putty'yi istemci olarak kullanırken, komut biçimlendirmesi aynı kalır. Ancak, çalıştırılabilir dosyanın adını değiştireceğiz. Kaynak veya hedef dizinlerden bahsederken Windows dosyalarına ve dizinlerine giden yolları belirtmek için bir sözdizimi kullanmamız gerekir. Komut satırını (cmd.exe) veya PowerShell'i çalıştırın, pscp .exe dosyasının bulunduğu dizini açın ve komutu girin:
pscp.exe C: Tempfile.tgz root@123.123.123.123:/root
- Başka bir klasörden çalıştırırsanız, pscp.exe'nin tam yolunu belirtmeniz gerekecektir. Yollardan herhangi biri boşluk içeriyorsa, çift tırnak kullanmamız gerekir - "dosya yolu":
“C:Program FilesPuttypscp.exe” C:Tempfile.tgz root@123.123.123.123:/root
- Basitçe pscp'yi (scp'ye benzer şekilde) parametresiz çalıştırın ve değiştiricilerle ilgili yardımın yanı sıra komut sözdizimi bilgilerini okuyun.
SSH bağlantısını kullanarak uzak bir sunucuda komut çalıştırma
- SSH protokolü, uzak bir sunucuda hem etkileşimli oturumları hem de normal komutları ve komut dosyalarını çalıştırmayı destekler.
Linux İşletim Sistemini Kullanma
- Komut sözdizimi:
ssh [user]@[server] ‘[command]’
- Belirtilen kullanıcının parolasını girin ve varsa SSH konsolunda komut çıktısını alın.
- Örneğin, uzak sunucuda yüklü olan işletim sistemi hakkında bilgi bulabiliriz:
ssh root@123.123.123.123 ‘uname -a’
- Tek bir bağlantı kullanarak birden fazla komut çalıştırmak için ayırıcı olarak ";" karakterini kullanabilirsiniz. Uzak sunucudaki ağ ayarlarını ve etkin ağ bağlantılarını kontrol edin:
ssh root@123.123.123.123 ‘ifconfig; netstat -anp tcp’
- If you need to run a local script file on a remote server: run the command interpreter (in the script execution mode). It can be bash with the-s key and pass the script file to it for the standard input. Take a look at the example below:
ssh root@123.123.123.123 ‘bash -s’ < /home/user/myscript.sh
- Yerel dosya: /home/user/myscript.sh uzak sunucuda çalıştırılacaktır.
- SSH komutunu parametre olmadan çalıştırmak, kısa bir sözdizimi referansı ve komutun işlevselliğini genişletmenize olanak tanıyan ek değiştiricilerin bir listesini görmenizi sağlar.
Windows İşletim Sistemini Kullanma
- Uzak sunucuya bağlanmak için, Putty istemcisini çalıştırılabilir plink.exe ile kullanacağız. Dosyasını kullanacağız, eğer bilgisayarımız Windows'u destekliyorsa. Bu dosya ile çalışmak için komut satırını (cmd.exe) veya PowerShell'i kullanın.
- Komutu uzak bir sunucuda çalıştırmak için aşağıdaki sözdizimini kullanın:
plink.exe [server] - ssh-l [user] “[command]”
- Check the network interfaces configuration:
plink.exe 123.123.123.123 -ssh-l root “ifconfig”
- plink.exe, Linux'taki SSH komutunda olduğu gibi, birden fazla komut çalıştırmak için ayırıcı olarak ";" kullanmanıza izin verir:
plink.exe 123.123.123.123 -ssh-l root “ifconfig; netstat-anp tcp”
- -m ek anahtarını kullanarak yerel bir dosyadan komutları çalıştırabilirsiniz:
plink.exe 123.123.123.123 -ssh-l root-m “C:Tempmyscript.sh”
- Plink.exe komutunu parametresiz çalıştırarak, kısa bir sözdizimi referansı ve ek komut değiştiricilerinin bir listesini bulabilirsiniz.