背景:

公司有两台服务器A与B,经常会碰到代码中的配置文件不一致的情况...............,为了反面让两台服务器配置统一,所以需要写个shell脚本,用到的linux命令主要是scp

1、在A上生成ssh的私钥和公钥【生成的目录在当当前目录下的.ssh目录下,.ssh 是隐藏文件】

ssh-keygen -t rsa ##需要3次回车
ssh-keygen -t rsa -P ##仅一次回车

2、把A的公钥内容传到B的用户目录的.ssh文件夹下的authorized_keys文件中

scp ~/.ssh/id_rsa.pub user@B_host_or_ip:~/.ssh/authorized_keys  ##希望每次自动登录用什么用户,这里的B_user就用什么帐号,因为默认会考到这个帐号下.ssh中

ps:一定要把内容放到authorized_keys文件里,如果这个文件已经存在,那就追加到后面即可,不要覆盖了。

3、A再用ssh进行操作时就不需要输入密码了

ssh B_user@B_host_or_ip  ##直接登录成功

scp脚本如下:

#!/bin/sh
path="/home/work/flight/order"
filename="conf"
ip="ip"

cd $path && mv conf conf_bak
echo "---生成备份文件conf_bak-----"
#scp -r $path/$filename tester@$ip:$path/

scp -r tester@$ip:$path/$filename $path/

echo "---------拷贝完毕---------------"

另外说下scp和rsync的区别

1、scp和ssh是一套,用来Linux 2台服务器的文件传输。和ssh一样的安全传输协议,所以使用scp命令进行服务器间的文件复制不用手动输入密码,scp就是安全copy的意思

2、Rsync 和scp相比,它可以只备份有差异的文件,减少了不少时间,另外也支持ssh

rsync -avH [ssh] /path/to/source user@des:/path/to/local ##本地同步到远程,推
rsync -avH [ssh] user@des:/path/to/source /path/to/local ##远程同步到本地,拉

ssh 免密码远程登录的更多相关文章

  1. SSH免密码远程登录Linux

    1. 有A,B两台机(Linux/unix), 要想从A用ssh远程登录到B上(假设各自的IP,A:192.168.100:B:192.168.1.104). 2. 在A机上,用“ssh-keygen ...

  2. ssh免密码快速登录配置

    使用ssh登录服务器的时候,需要输入ip地址.端口.用户名.密码等信息,比较麻烦,容易输错.还好,通过客户端和服务器的配置参数,可实现免密码快速登录.服务器可通过保存客户端的公钥,用于验证客户端的身份 ...

  3. L07-Linux配置ssh免密远程登录

    本文配置可实现:集群服务器之间相互可以ssh免密登录.若只想从单一机器(如master)ssh免密登录其他机器(slave1.slave2),则只跟着操作到第二步即可. 建议先花两三分钟把全文看完再跟 ...

  4. 利用系统自带工具快速实现SSH免密远程登录

    一.软件环境 操作系统:CentOS Linux release 7.4.1708 (Core) SSH版本 [root@Geeklp201 ~]# ssh -V OpenSSH_7.4p1, Ope ...

  5. Linux下配置ssh免密远程登录

    步骤 使用ssh-keygen生成密钥对 提示要求输入保存的位置,密码等信息.全部使用默认信息即可 使用ssh-copy-id user@host将公钥拷贝到需要免密登录的服务器的账户中. 例如,需要 ...

  6. Mac 下配置 SSH 免密码安全登录

    Win下个人常使用 SecureCRT ,Mac 下感觉 SecureCRT 并不好使,常用 iTerm2+zsh 搭配使用.A连接B 无密码登陆,则A上面执行 ssh-keygen 一路回车,把 ~ ...

  7. Linux命令(五)免密码远程登录和配置别名

    1. ssh-keygen 2. ssh-copy-id -p port user@remote .ssh中建立并编辑config文件 原来需要 ssh -p ubuntu@xxx.xxx.xxx 现 ...

  8. ssh更改默认端口号及实现免密码远程登陆

    近来在复习防火墙管理工具 iptables 的基本使用方法,涉及到对端口添加或删除防火墙策略的内容,之前对ssh更改默认端口号及免密码登录的方法不熟悉,这次做一个基本的总结防止自己遗忘. 错误偏差及其 ...

  9. Linux远程登录ssh免密码配置方法(仅供参考)

    这篇文章主要介绍了linux远程登录ssh免密码配置方法,需要的朋友可以参考下(http://www.0834-3659999.com) 一.情景 公司刚上几台Linux,现在要把主机之间都能远程ss ...

随机推荐

  1. bzoj 1977 [BeiJing2010组队]次小生成树 Tree

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1977 kruscal别忘了先按边权sort.自己觉得那部分处理得还挺好的.(联想到之前某题的 ...

  2. Visualforce入门第二篇_2017.3.1

    代码实现类似Html的表单(Form) <apex:page sidebar="false" standardController="Account"&g ...

  3. 蓝桥杯 算法训练 ALGO-115 和为T

    算法训练 和为T   时间限制:1.0s   内存限制:256.0MB 问题描述 从一个大小为n的整数集中选取一些元素,使得它们的和等于给定的值T.每个元素限选一次,不能一个都不选. 输入格式 第一行 ...

  4. C# Math.Round

    不能直接调用Math.Round方法的,这可和Java的不一样哦Math.Round这个函数的解释是将值按指定的小数位数舍入,并不就是四舍五入.这种舍入有时称为就近舍入或四舍六入五成双 C# code ...

  5. 设置mysql表名大小写不敏感

    在跨平台的程序设计中要注意到mysql的一些系统变量在windows和linux上的缺省值是不同的, 比如mysql表名称的大小写变量. 在windows上lower_case_table_names ...

  6. Eclipse中Next Difference的快捷键

    原文:http://stackoverflow.com/questions/10177460/is-there-a-key-binding-for-next-difference-and-previo ...

  7. 11-23网页基础--JavaScript基础知识

    第一课 JavaScript简介 一.定义:JavaScript是脚本语言,需要宿主文件,它的宿主文件是html文件. JavaScript 是一种轻量级的编程语言. JavaScript 是可插入 ...

  8. DAY11-MYSQL补充之SQL逻辑查询语句执行顺序

    一 SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOI ...

  9. latex bib format

    LaTeX 的对参考文献的处理实在是非常的方便,我用过几次,有些体会,写出来供大家参考.当然,自己的功力还不够深,有些地方问题一解决就罢手了,没有细究. LaTeX 对参考文献的处理有这么一些优点: ...

  10. Angular问题01 创建组件时报错、HammerJS找不到

    1 利用ng创建组件时出现错误 1.1 ng g c test/testHome 1.2 问题描述 当angular应用中有多个module.ts文件时,创建组件时会出现冲突,因为有多个module. ...