一、原理:

    使用SSH连接Centos时,我们可以创建一个公钥和一个私钥,公钥放在服务端,私钥放在客户端,当客户端去连接服务端时,会先去查找密钥,
    要是客户端的私钥可以和服务端的公钥匹配,我们就可以免密码登录,要是无法匹配,就需要我们去输入密码

二、实现步骤:

1、先配置ssh

        打开SSH的配置文件 ( /etc/ssh/sshd_config),找到以下内容,并去掉注释:
        RSAAuthentication yes    # 打开RSA认证
        PubkeyAuthentication yes    # 打开密钥认证
        AuthorizedKeysFile     .ssh/authorized_keys    # 公钥
        配置好之后重启ssh服务:/sbin/service sshd restart

2、生成公钥和私钥:

        ssh-keygen -t rsa  ( -t  指定生成的密钥为 rsa认证),一路回车就可以了,会在 /root/.ssh/目录下生成两个文件 id_rsa(私钥)、id_rsa.pub(公钥)

3、修改 id_rsa.pub 的名称:

mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys

4、将私钥拷贝到客户端:

        如果客户端是Linux系统,直接将文件放在 /root/.ssh/ 目录下就可以,这里我用的是Windows,然后我们需要用 Xshell 去连接服务器,
        打开Xshell,新建连接, 在 主机 那里输入你服务器的 IP 地址,然后点击用身份验证,在方法那里选择 Public Key,用户名 那里输入服务器给你提供的
        账户,然后点击浏览,点导入,找到你从服务器上拷贝下来的私钥,点打开,然后点确定 -> 确定 -> 连接就可以连接上了

三、scp 拷贝文件

1、将一个文件/目录从远程机器 scp 到本地机器

# 在 xshell 中,使用如下命令:
[root@Demon ~]# scp /home/demon/id_rsa Demon@192.168.1.57:/D:/

2、将一个文件/目录从本地机器 scp 到远程机器

[root@Demon ~]# scp  Demon@192.168.1.57:/D:/1.txt  /home/demon

四、写一个脚本,从一个文本文件中读取 IP 列表(每行一个 IP),并 SSH 登录这些 IP 所在的机器,将 /var/log/message 文件清空

#!/bin/bash
#Filename:test.sh
 
while read line;
do
    upt="ssh -nt -t root@$line rm -f /var/log/message";
    $upt;
 
done < test_ip.txt

15. SSH 远程的更多相关文章

  1. CentOS6无法本地登陆,ssh远程登陆没问题

    CentOS6无法本地登陆,ssh远程登陆没问题---使用CentOS自带的rsyslog分析调试 Apr 21 14:15:27 raccontroller init: tty (/dev/tty1 ...

  2. 修改ssh远程默认端口

    修改ssh远程默认端口 Linuxssh端口修改 1. 修改ssh配置文件 [root@distzabbix ~]# vim /etc/ssh/sshd_config 找到第17行附近#Port 22 ...

  3. Linux(11):期中架构(3)--- SSH远程管理服务 & ansible 批量管理服务

    SSH远程管理服务 1. 远程管理服务知识介绍 # 1.1 SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Worki ...

  4. Linux—修改ssh远程登录信息

    修改ssh远程登录端口 1.修改ssh服务的配置文件:/etc/ssh/sshd_config ,将 Port 22 改为 Port 3120 保存退出. [root@localhost ~]# vi ...

  5. SSH远程登录、.sh文件后缀运行、l l命令结果说明、VIM模式切换

    目录 SSH远程登录..sh文件后缀运行.l l命令结果说明.VIM模式切换 SSH远程安全登录 .sh文件后缀运行 l l命令结果说明 VIM模式切换 SSH远程登录..sh文件后缀运行.l l命令 ...

  6. 全新 Mac 安装指南(编程篇)(环境变量、Shell 终端、SSH 远程连接)

    注:本文专门用于指导对计算机编程与设计(尤其是互联网产品开发与设计)感兴趣的 Mac 新用户,如何在 Mac OS X 系统上配置开发与上网环境,另有<全新 Mac 安装指南(通用篇)>作 ...

  7. 【浅层优化实战】ssh远程登录Linux卡慢的全过程排查及解决方案

    ssh远程登录Linux卡慢的全过程排查及解决方案 前言: 在linux操作系统使用过程中偶然一次感到使用ssh远程连接软件连接操作系统需要等待许久,第一次没在意,第二次也没在意,第三次有点忍受不住了 ...

  8. Firefly安装ROS及ssh远程登录配置

    一.在Linux firefly 3.10.0 上安装ROS-indigo 快捷键 CTRL + ALT  + T 打开终端并安装ROS-indigo sudo sh -c 'echo "d ...

  9. linux系统新建用户ssh远程登陆显示-bash-4.1$解决方法

    linux系统新建的用户用ssh远程登陆显示-bash-4.1$,不显示用户名路径 网络上好多解决办法,大多是新建.bash_profile文件然后输入XXXXX....然而并没有什么用没有用.... ...

随机推荐

  1. 使用区域组织 ASP.NET MVC 应用程序

    MVC 模式可将应用程序的模型(数据)逻辑与其呈现逻辑和业务逻辑分离. 在 ASP.NET MVC 中,这种逻辑分离还在项目结构中以物理方式实现,在该项目结构中,控制器和视图保存在使用命名约定定义关系 ...

  2. Linq 关键字

    from var lowNums = from num in numbers            where num < 5            select num; numbers 是数 ...

  3. isKindOfClass、isMemberOfClass的区别

    两者都能检测一个对象是否是某个类的成员,两者的区别是:isKindOfClass 不但可以用来确定一个对象是否是一个类的成员,也可以用来确定一个对象是否是派生自该类的类的成员.isMemberOfCl ...

  4. OpenGL ES 2.0 内置变量

    1. 顶点着色器中的内置变量 输出变量 gl_Position(vec4):顶点数据位置gl_PointSize(float):计算一个点的大小 2.片元着色器中的内置变量 输入变量gl_FragCo ...

  5. Spark添加/更改集群节点需要修改的配置文件

    笔记:在配置好了spark后,如果需要添加/删除一个结点需要修改如下配置文件 cd $HADOOP/etc/hadoop 进入hadoop配置文件夹下 修改 slaves,将对应的节点添加/删除 修改 ...

  6. 单片微机原理P3:80C51外部拓展系统

    外部拓展其实是个相对来说很好玩的章节,可以真正开始用单片机写程序了,比较重要的是外部存储器拓展,81C55拓展,矩阵键盘,动态显示,DAC和ADC.   0. IO接口电路概念与存储器拓展 1. 为什 ...

  7. nodeclub 学习记录

    源码地址:https://github.com/cnodejs/nodeclub 按照 它的步骤 在系统中跑没有出错,但是注册后没有发送邮件验证码,我将 controller层下面的sign.js 的 ...

  8. 在VS里面查看lua堆栈

     extern std::string get_lua_stack(void); std::string stack = get_lua_stack();    std::string get_lua ...

  9. 自学Python的点滴

    1.第一天 注释 ——任何在#符号右面的内容都是注释. 注释主要作为提供给程序读者的笔记. 程序应该包含这两行 #!/user/bin/python #Filename:**.py 2.在程序中打开P ...

  10. hdu 4419 Colourful Rectangle

    http://acm.hdu.edu.cn/showproblem.php?pid=4419 题意:给出3种颜色,重叠会生成新的颜色,然后有一些矩形,求出每种颜色的面积. 转化为二进制表示颜色:001 ...