一,在A主机里的用户 

运行  #ssh-keygen -t rsa                 # 生成 rsa规则的密钥

结果如下
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.

103032_4h3q_3066331.png

会在用户目录~/.ssh/产生两个文件: 

 id_rsa 、   id_rsa.pub 


二,把A主机上的id_rsa.pub文件,拷贝到B主机的root用户主目录下的.ssh目录下,并且改名为authorized_keys    (可以不是root用户,其他用户也可以)
即: 

/root/.ssh/authorized_keys 

或 

zzd@gpu3:~/.ssh$    cd   ~/.ssh

zzd@gpu3:~/.ssh$   ls

authorized_keys  known_hosts

103124_gItQ_3066331.png


这样在A主机上使用scp命令复制文件到B上将不提示输入密码了,直接复制了。

也可在A主机上使用scp命令将B上文件复制到本机;总之不需要验证,就可以在A访问B
反之亦然!

注:如果有多台计算机需要与B进行复制,则只需将id_rsa.pub中的内容复制到authorized_keys文件中即可。

      执行       cat ~/.ssh/a.pub >> ~/.ssh/authorized_keys         将内容追加进去

确保~/.ssh/目录的权限700,~/.ssh/authorized_keys文件的权限是600

三,复制文件或目录命令: 

复制文件: 

(1)将本地文件拷贝到远程 

scp   文件名   用户名@计算机IP: 远程路径目录

scp /root/.jenkins/workspace/superid-webapi-2-0-200/superid-web-app/target/superid-web-app-1.0-SNAPSHOT.war root@192.168.1.200:/home/simu/tomcat/webapps/mk.war


(2)从远程将文件拷回本地 

scp  用户名@计算机IP: 文件名 本地路径目录

复制目录: 

(1)将本地目录拷贝到远程 

scp  -r  目录名  --用户名@计算机IP: 远程路径 

(2)从远程将目录拷回本地 

scp -r 用户名@计算机IP: 目录名 本地路径目录

103526_JZ8C_3066331.png

四、sshd_config配置文件的修改:

修改root的ssh权限,即修改 /etc/ssh/sshd_config文件中 PermitRootLogin no / without-password  改为 PermitRootLogin yes
然后重启ssh服务(sudo service ssh restart

详见:【sshd】sshd_config 中 PermitRootLogin 的forced-commands-only的限定密钥登陆、限定执行命令

103330_pZe8_3066331.png

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐