实用配景
- 工作中频仍登录服务器和拷贝文件,都会提示输入密码
- 在持续集成的场景下,自动部署应用时是没有人工干预的
解决方案
下面以实现A服务器到B服务器的免密码登录和拷贝文件为例,先容相关的配置。(即A访问B不需要输密码)
A服务器(主服务器)地址:192.168.1.AAA
B服务器(从服务器)地址:192.168.1.BBB
step1 在A生成密钥对
如果已经有了也可以选择不用生成
- ssh-keygen -t rsa -P ""
复制代码 执行上述命令,一路回车,会在当前登录用户的home目录下的.ssh目录下(一般为~/.ssh/下)生成id_rsa和id_rsa.pub两个文件,分别代表密钥对的私钥和公钥,如下图所示:
Step2 拷贝A的公钥(id_rsa.pub)到B
将A的公钥(id_rsa.pub)拷贝到B的用户下为例(我们以root为例)
- scp ~/.ssh/id_rsa.pub root@192.168.1.BBB:/root
复制代码 step3 登录B拷贝A的id_rsa.pub内容到.ssh目录下的authorized_keys文件中
登录B拷贝A的id_rsa.pub内容到.ssh目录下的authorized_keys文件中
- cat id_rsa.pub >> ~/.ssh/authorized_keys
复制代码 如果提示没有.ssh文件夹就本身重修一个
此时在A中用SSH登录B或向B拷贝文件,将不需要密码
实现B免密码登录A,操纵方式是一样的,在B中用ssh-keygen生成ssh密钥对,将公钥拷贝到A中,A将B的公钥拷贝到.ssh目录下的authorized_keys文件中即可
解决方案快捷方式
- ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.BBB
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |