假设本机为client,远程机器为server。 举例:从已登录的Client(192.168.1.1)复制目录/usr/a到Server(192.168.1.2)的/usr目录下, 命令如下: scp -r /usr/a root@192.168.1.2:/usr 回车之后等待片刻,提示输入Server的密码, 输入正确密码之后, 开始复制目录a下的所有文件到Server中。 如果只是复制一个文件, 则去掉-r参数,如: scp /usr/a/index.html root@192.168.1.2:/use/a/ 你会发现使用命令操作,是一种非常方便、快捷的方式。但是,如果想不输入密码,则需要在两台机器之间建立信任关系。 在机器Client的root和机器Server的root之间建立安全信任关系的步骤: 1. 在机器Client上root用户执行ssh-keygen命令,生成建立安全信任关系的证书 [root@Client root]# ssh-keygen -b 1024 -t rsa 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: 49:9c:8a:8f:bc:19:5e:8c:c0:10:d3:15:60:a3:32:1c root@Client [root@Client root]# 注意:在程序提示输入passphrase时直接输入回车,表示无证书密码。 上述命令将生成私钥证书id_rsa和公钥证书id_rsa.pub,存放在/root/.ssh/子目录中。 2. 将公钥证书id_rsa.pub复制到机器Server的/root/.ssh/子目录下,如果Server的/root/.ssh/下没有authorized_keys,则直接将id_rsa.pub重命名为authorized_keys,如果Server的/root/.ssh/下已经有authorized_keys文件,则将id_rsa.pub的内容添加到authorized_keys文件的尾部。[可以使用cat id_dsa.pub >> authorized_keys命令,也可以使用vim打开authorized_keys进行编译。] 3. 现在可以使用scp进行远程数据传输,同时又避免输入密码了。 (责任编辑:IT) |