• s15day14 ssh秘钥远程连接


    1 使用密钥登录
        1.1 创建密钥对
        1.2 上传公钥文件
        1.3 导入公钥信息
        1.4 使用密钥对登录
    2 远程执行命令
        2.1 简单命令
        2.2 使用脚本执行多命令

    192.168.1.104作为客户机
    192.168.1.103作为服务器

    1 使用密钥登录

    1.1 创建密钥对

    在SSH客户机创建用户秘钥对

    ssh-keygen -t rsa 之后全回车即可
    将会在~/.ssh目录中生成两个文件:id_rsa(私钥) 与 id_rsa.pub(公钥)

    1.2 上传公钥文件

    当然,也可以直接将内容拷贝粘贴

    scp ~/.ssh/id_rsa.pub chencye@192.168.1.103:~/.ssh/id_rsa.pub_192.168.1.104

    1.3 导入公钥信息

    在SSH服务器中导入公钥文本
    在服务器中,目标用户(用来远程登录的用户)的公钥数据库位于~/.ssh/目录下,默认文件名是authorized_keys
    注意修改authorized_keys权限

    # 如果authorized_keys不存在,则创建它
    touch ~/.ssh/authorized_keys
    # 将上传的公钥添加到authorized_keys后面
    cat ~/.ssh/id_rsa.pub_192.168.1.104 >> ~/.ssh/authorized_keys
    # 修改authorized_keys权限
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    # 查看authorized_keys最后一行
    tail -1 ~/.ssh/authorized_keys

    1.4 使用密钥对登录

    在客户机上,可以直接使用命令ssh 192.168.1.103进行登录,而不需要输入用户名与密码了

    2 远程执行命令

    http://www.cnblogs.com/ilfmonday/p/ShellRemote.html

    2.1 简单命令

    双引号,必须有。如果不加双引号,第二个命令在本地执行
    分号,两个命令之间用分号隔开

    ssh chencye@192.168.1.103 "cd ~ ; touch ssh.txt"

    2.2 使用脚本执行多命令

    #!/bin/bash
    ssh chencye@192.168.1.103 > /dev/null 2>&1 << sshoff
        cd ~
        touch autossh.txt
    exit
    sshoff
    
    echo "done!"

    远程执行的内容在<< sshoff 至sshoff之间,在远程机器上的操作就位于其中
    注意的点
    sshoff可以随便修改成其他形式
    重定向目的在于不显示远程的输出了
    在结束前,加exit退出远程节点
    

  • 相关阅读:
    AdaBoost
    svm算法
    DBSCAN算法
    聚类算法分类
    EM算法
    ios开发中使用FMDB
    eclipse配置mahout
    【MyBatis】Mapper XML 文件
    MyBatis Generator的使用
    IntelliJ IDEA 创建 Maven简单项目
  • 原文地址:https://www.cnblogs.com/weiman3389/p/6286720.html
Copyright © 2020-2023  润新知