|
1.生成SSH KEY 让server1 SSH连接 server2不需要密码
(1) Server1#ssh-keygen -t rsa
这个命令生成一个密钥对:id_rsa(私钥文件)和id_rsa.pub(公钥文件)。默认被保存在~/.ssh/目录下。
(2) 公钥添加到远程主机的 authorized_keys 文件中
将文件上传到远程主机中
server1#scp ~/.ssh/id_rsa.pub root@192.168.120.222:/root/
SSH登陆到远程主机,将公钥追加到 authorized_keys 文件中
server2#cat /root/id_rsa.pub >> /root/.ssh/authorized_keys
(3)server2#service sshd restart
当两台LINUX主机之间要互传文件时可使用SCP命令来实现,建立信任关系之后可不输入密码。
把你的本地主机用户的ssh公匙文件复制到远程主机用户的~/.ssh/authorized_keys文件中
假设本地主机linux100,远程主机linux200
一,在linux100主机里的用户
运行
#ssh-keygen -t rsa
结果如下
QUOTE:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/.username/ssh/id_rsa):#回车
Enter passphrase (empty for no passphrase):#回车
Enter same passphrase again:#回车
Your identification has been saved in /home/.username /.ssh/id_rsa.
Your public key has been saved in /home/.username /.ssh/id_rsa.pub.
The key fingerprint is:
38:25:c1:4d:5d:d3:89:bb:46:67:bf:52:af:c3:17:0c username@localhost
Generating RSA keys:
Key generation complete.
会在用户目录~/.ssh/产生两个文件,id_rsa,id_rsa.pub
二,把linux100主机上的id_rsa.pub文件拷贝到linux200主机的root用户主目录下的.ssh目录下,并且改名为authorized_keys
即:
/root/.ssh/authorized_keys
这样在linux100主机上使用scp命令复制文件到linux200上将不提示输入密码了,直接复制了。
反之亦然!
注:如果有多台计算机需要与linux200进行复制,则只需将id_rsa.pub中的内容复制到authorized_keys文件中即可。
三,复制文件或目录命令:
复制文件:
(1)将本地文件拷贝到远程
scp 文件名 用户名@计算机IP或者计算机名称:远程路径
(2)从远程将文件拷回本地
scp 用户名@计算机IP或者计算机名称:文件名 本地路径
复制目录:
(1)将本地目录拷贝到远程
scp -r 目录名 --用户名@计算机IP或者计算机名称:远程路径
(2)从远程将目录拷回本地
scp -r 用户名@计算机IP或者计算机名称:目录名 本地路径
四,注意
.ssh目录的权限必须是0700, .ssh/authorized_keys文件权限必须是0600, 否则公钥认证不会生效. 如果想直接进入192.168.41.75的其他用户, 则需要将公钥追加到其他用户的authorized_keys文件里. |
|