一、原理:

    使用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. WebApi2官网学习记录---Configuring

    Configuration Settings WebAPI中的configuration settings定义在HttpConfiguration中.有一下成员: DependencyResolver ...

  2. Nginx Configure时配置

    Configure Arguments Configure arguments common for nginx binaries from pre-built packages for stable ...

  3. linux环境下jdk 安装以及maven私服搭建

    1:准备资源      linux服务器,jdk和nexus  安装包    2:网络通畅,保持windows端和linux服务器端网络通畅.     3: 安装jdk和配置环境变量      进入到 ...

  4. iOS_SN_详解沙河(转载)

    一 查看沙盒结构 和一些百度来的博客显示隐藏稳文件的方式不同,本文也提供两种方式,简单粗暴. 方式一 使用工具simpholders(推荐) 下载链接 http://simpholders.com/  ...

  5. hdu3714 三分

    Error Curves Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...

  6. 视差滚动(Parallax Scrolling)效果的原理与实现

    视差滚动(Parallax Scrolling)效果的原理与实现1.视差滚动效果的主要特点:    1)直观的设计,快速的响应速度,更合适运用于单页面    2)差异滚动 分层视差    页面上很多的 ...

  7. 阅读书目_2014H1

    1.<程序员修炼之道 专业程序员必知的33个技巧>(完成) 注:更多是面向程序员全工作流程的. 2.linux shell脚本攻略 适合初学,但不方便作为参考手册查阅. 3.编写可读代码的 ...

  8. project euler 14 collatz

    def collatz(num,i): i =i + 1 if num%2 == 0: return collatz(num//2,i) elif num == 1: return i else: r ...

  9. [Python shelve模块Error]bsddb.db.DBPageNotFoundError: (-30986, 'DB_PAGE_NOTFOUND: Requested page not found')

    在用scrapy抓数据,用shelve保存时出现了这个Error,目标是储存一串unicode字符串组成的列表,exception代码是tempbase['joke']=joke_list,测试只要j ...

  10. The Time in Words

    def main(): time = ["one", "two", "three", "four", "fiv ...