scp[計算機學科名詞]

scp[計算機學科名詞]

scp是secure copy的縮寫,是用來進行遠程檔案拷貝的。數據傳輸使用 ssh,並且和ssh 使用相同的認證方式,提供相同的安全保證 。與rcp 不同的是,scp 在需要進行驗證時會要求你輸入密碼或口令。

傳送命令

SCP(Secure Copy)

scp[計算機學科名詞] scp[計算機學科名詞]

scp 命令是 SSH 中最方便有用的命令了,試想,在兩台伺服器之間直接傳送檔案,僅僅用 scp 一個命令就完全解決了。你可以在一台伺服器上以 root 身份運行 #scp servername:/home/ftp/pub/file1 ./ 這樣就把另一台伺服器上的檔案 /home/ftp/pub/file1 直接傳到本機器的當前目錄下,當然你也可以用 #scp /tmp/file2 servername:/boot 把本機上的檔案 /tmp/file2 送到另一台機器的 /boot 目錄下。而且整個傳送過程仍然是用 SSH 加密的。

套用實例

最簡單的套用如下 :

scp 本地用戶名@IP位址:檔案名稱 1 遠程用戶名 @IP 地址 : 檔案名稱 2

[ 本地用戶名 @IP 地址:] 可以不輸入 , 可能需要輸入遠程用戶名所對應的密碼 .

可能有用的幾個參數 :

-v 和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度 . 可以用來查看連線 , 認證 , 或是配置錯誤 .

-C 使能壓縮選項 .

-P 選擇連線埠 . 注意 -p 已經被 rcp 使用 .

-4 強行使用 IPV4 地址 .

-6 強行使用 IPV6 地址 .

-r 遞歸拷貝整個資料夾(包含子資料夾)

如——

copy 本地的檔案到遠程的機器上

scp /etc/lilo.conf

會將本地的 /etc/lilo.conf 這個檔案 copy 到使用者my 的家目錄下。

例如

copy 本地的檔案到遠程的機器上

scp /etc/lilo.conf

會將本地的 /etc/lilo.conf 這個檔案 copy 到 net67使用者 k 的家目錄下。

copy遠程機器上的檔案到本地來

scp .etc/lilo.conf /etc

會將 中 /etc/lilo.conf 檔案 copy 到本地的 /etc 目錄下。

保持從來源 host 檔案的屬性

scp –p k@net67.:/etc/lilo.conf /etc

在此必須注意使用者的許可權是否可讀取遠程上的檔案,若想知道更多關於 scp 的使用方法,可去看看 scp 的使用手冊。

觸摸板

產生公開鑰 (pulib key) 和私人鑰 (private key),以保障 ssh 在線上的安性, 當 ssh 連 shd 伺服器,會交換公開鑰上,系統會檢查 /etc/ssh_know_hosts 內儲存的 key,如果找到客戶端就用這個 key 產生一個隨機產生的session key 傳給伺服器,兩端都用這個 key 來繼續完成 ssh 剩下來的階段。

它會產生 identity.pub、identity 兩個檔案,私人鑰存放於identity,公開鑰 存放於 identity.pub 中,接下來使用 scp 將 identity.pub copy 到遠程機器的家目錄下.ssh下的authorized_keys。 .ssh/authorized_keys(這個 authorized_keys 檔案相當於協定的 rhosts 檔案), 之後使用者能夠不用密碼去登入。RSA的認證絕對是比 rhosts 認證更來的安全可靠。

執行:

scp identity.pub .tw:.ssh/authorized_keys

若在使用 ssh-keygen 產生鑰匙對時沒有輸入密碼,則如上所示不需輸入密碼即可從 去登入 在此,這裡輸入的密碼可以跟帳號的密碼不同,也可以不輸入密碼。

相關詞條

熱門詞條

聯絡我們