Scp如何使用密碼拷貝文件
Scp使用密碼拷貝文件
在Linux系統(tǒng)中,scp是一個非常好用的命令,可以用于在本地和遠(yuǎn)程計算機(jī)之間復(fù)制文件和目錄。
使用scp命令復(fù)制文件時,你可以使用兩種方法來提供密碼:
直接拷貝(手動輸入密碼)
下面是使用scp命令復(fù)制文件并手動輸入密碼的方法:
scp username@remote_host:/path/to/remote/file /path/to/local/directory
在上面的命令中,username是遠(yuǎn)程服務(wù)器的用戶名,remote_host是遠(yuǎn)程服務(wù)器的IP地址或域名,/path/to/remote/file是遠(yuǎn)程服務(wù)器上的文件路徑,/path/to/local/directory是本地服務(wù)器上的目標(biāo)目錄。
當(dāng)你運(yùn)行這個命令時,系統(tǒng)會提示你輸入密碼。輸入密碼后,文件就會被復(fù)制到本地服務(wù)器上。
[root@localhost dg]# scp gameSrv.jar root@192.168.2.67:/usr/my_server/ The authenticity of host '192.168.2.67 (192.168.2.67)' can't be established. ECDSA key fingerprint is SHA256:8KXTdTgAUO6ESWUkYXLMfEVZQH8uSn3jb4DnuH651bY. ECDSA key fingerprint is MD5:7f:1f:0e:9e:c3:ed:8d:cd:1b:a0:e9:f7:89:1d:e1:4b. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.2.67' (ECDSA) to the list of known hosts. root@192.168.2.67's password:
使用密鑰拷貝(ssh密鑰對)
使用ssh-keygen生成ssh密鑰對,然后將公鑰添加到遠(yuǎn)程服務(wù)器的~/.ssh/authorized_keys文件中,這樣在復(fù)制文件時就不需要輸入密碼了。
下面是使用ssh-keygen生成ssh密鑰對并將公鑰添加到遠(yuǎn)程服務(wù)器的方法:
1.在本地服務(wù)器上生成ssh密鑰對
這臺機(jī)器的ip是:192.168.2.66(機(jī)器1) (需要在你自己的機(jī)器1上執(zhí)行)
直接下一步 下一步就好。
[root@localhost dg]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:nXsv3egTQHkKpzbBiQ99nkegxmO38WKNyozj48TsptQ root@localhost.localdomain The key's randomart image is: +---[RSA 2048]----+ | + ..o | | o.*.= o | | o*Oo= | | +=+=*. | | S.o.=oo | | + + + .. | | . E = .. + | | . +o. ...+ .| | .++. oo. | +----[SHA256]-----+ [root@localhost dg]# [root@localhost dg]# cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC2gLD9dsTTaRImIC4mhWxYy2ESe3f/kj+xpBA5ixOJDgN3lUIFbHBZKY0f2ESHV1cZj/DXG2qkJD5dd4dPPJEPsycFmtLI1Y1OKvEIlMK3pSpTNkUZ5aGPxRJi1vwEzqcglZXPmzT5w6s42laSY4o49dSRYBDCxt7Aq6t3IQU+MvxmEpZ+IThsYngBY6vXnhkjNAZ5JGdax1fgpYpvTsFRbFPKEqTvqSu2lpKGCXRclPyF6TkXqAFj1PxgnGZ8gFJ/1z5dk38K0KtQzCdRo8Fx+i1OQ6IDuBMMDGg/TIaNL7Zsqw/KJFs6rrrWVy0QUKE5zpb/HeKxlBorbQOdHXFh root@localhost.localdomain [root@localhost dg]#
2.將生成的公鑰(默認(rèn)為~/.ssh/id_rsa.pub)添加到遠(yuǎn)程服務(wù)器上
需要換成自己的用戶名和ip(機(jī)器2),會提示輸入192.168.2.67(機(jī)器2)的登錄密碼
[root@localhost dg]# ssh-copy-id root@192.168.2.67 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@192.168.2.67's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'root@192.168.2.67'" and check to make sure that only the key(s) you wanted were added. [root@localhost dg]#
3.測試一下連接看是否需要輸入密碼
[root@localhost dg]# [root@localhost dg]# ssh root@192.168.2.67 Last login: Tue Aug 13 16:59:28 2024 from 192.168.2.35 [root@localhost ~]# [root@localhost ~]#
4.拷貝一個文件試試
[root@localhost dg]# [root@localhost dg]# scp gameSrv.jar root@192.168.2.67:/usr/my_server/ gameSrv.jar 100% 5959KB 95.2MB/s 00:00 [root@localhost dg]# [root@localhost dg]#
5.做一個腳本復(fù)制
IPS=("192.168.99.3" "192.168.99.1" "192.168.99.4") PORTS=("55898" "33488" "31880") for i in "${!IPS[@]}"; do scp -P ${PORTS[$i]} -r server root@${IPS[$i]}:/usr/my_server/javaServer/dg if [ $? -eq 0 ]; then echo "server upload to ${IPS[$i]} successful!" else echo "server upload to ${IPS[$i]} failed!" fi scp -P ${PORTS[$i]} gameSrv.jar root@${IPS[$i]}:/usr/my_server/javaServer/dg if [ $? -eq 0 ]; then echo "gameSrv upload to ${IPS[$i]} successful!" else echo "gameSrv upload to ${IPS[$i]} failed!" fi done
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Ubuntu編譯內(nèi)核模塊,內(nèi)容體現(xiàn)系統(tǒng)日志中
大家好,本篇文章主要講的是Ubuntu編譯內(nèi)核模塊,內(nèi)容體現(xiàn)系統(tǒng)日志中,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12詳解如何在Linux系統(tǒng)上安裝cpolar內(nèi)網(wǎng)穿透
cpolar作為一款體積小巧卻功能強(qiáng)大的內(nèi)網(wǎng)穿透軟件,不僅能夠在多種環(huán)境和應(yīng)用場景中發(fā)揮巨大作用,還能適應(yīng)多種操作系統(tǒng),本文主要介紹了cpolar在Linux系統(tǒng)下的各種應(yīng)用類型,感興趣的可以了解下2023-08-08