zoukankan      html  css  js  c++  java
  • ssh链接,公钥、私钥、远端图形化


    [yuq@localhost ~]$ hostname # 主机名
    localhost.localdomain

    [yuq@localhost ~]$ cat /etc/hosts # hosts配置文件
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

    公钥信息:
    [yuq@localhost ~]$ ssh 192.168.2.239
    The authenticity of host '192.168.2.239 (192.168.2.239)' can't be established.
    ECDSA key fingerprint is 8d:1b:22:84:04:a5:3b:2d:75:28:be:d8:9e:05:8d:a2.
    Are you sure you want to continue connecting (yes/no)?

    1.从客户端这边,第一次连接到服务器的时候,客户端会保存服务器的公钥指纹信息。服务器特有的一个标记,让客户端记录,这个服务器我登陆过。我有记录

    2.保存地址:家目录的.ssh目录
    [yuq@localhost ~]$ cat .ssh/known_hosts
    192.168.2.239 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAHqBl/ACs9HcEPZfqDaDtufw9MaU5inoGRXdKAhUqGFnAWZd3mjX6DL+Y4TLlgul/UpTi7gX/vvqR8lN513RdU=

    3.服务器ssh信息。
    [yuq@localhost ssh]$ ls -l /etc/ssh
    总用量 276
    -rw-r--r--. 1 root root 242153 1月 16 2015 moduli
    -rw-r--r--. 1 root root 2208 1月 16 2015 ssh_config
    -rw-------. 1 root root 4361 1月 16 2015 sshd_config
    -rw-r-----. 1 root ssh_keys 227 5月 26 13:52 ssh_host_ecdsa_key
    -rw-r--r--. 1 root root 162 5月 26 13:52 ssh_host_ecdsa_key.pub
    -rw-r-----. 1 root ssh_keys 387 5月 26 13:52 ssh_host_ed25519_key
    -rw-r--r--. 1 root root 82 5月 26 13:52 ssh_host_ed25519_key.pub
    -rw-r-----. 1 root ssh_keys 1675 5月 26 13:52 ssh_host_rsa_key
    -rw-r--r--. 1 root root 382 5月 26 13:52 ssh_host_rsa_key.pub

    4.ssh远程连接
    [yuq@localhost ssh]$ ssh yuq@192.168.2.239
    yuq@192.168.2.239's password:
    Last login: Fri May 26 15:04:50 2017 from 192.168.2.239


    5.打开远端图形化界面
    xclicent:各种图形,xserver:平台
    xclicent必须要运行在xserver上面
    linux:
    window:
    默认情况下,是不允许xclient到其他机器上运行的,要运行必须安装一个包yum list *xauth* 

    ssh 192.168.2.239 是默认字符传输(不加-X是不能打开图形界面的)
    ssh 192.168.2.239 -X 是允许图形传输


    6.ssh验证方式
    1.密码验证
    2.密钥验证
    对称加密:公钥,私钥
    非对称加密:1、数据加密:公钥加密,私钥解密
          2、数字加密:私钥加密,公钥解密
    验证过程:

    1.A上的tom用户会把自己的公钥发送给B的root
    2.B的root首先要看你所发送过来的信息是不是和我保留的一样
    3.B的root用户会员随机的加密一个数据,然后把加密的数据发送给A
    4.A的tom就会使用自己的私钥来解密


    7.使用用户名密码登录
    在命令行中输入命令:
    ssh username@ip_address -p port
    之后系统会提示输入密码,输入后即可登录
    如果不添加-p选项,则默认是22端口
    还可以使用-l选项输入用户名:
    ssh -l username ip_address -p port


    8.使用密钥登录(不使用密码)
    1.首先生成密钥,在任意目录下输入命令:

    ssh-keygen -t rsa -P ''
    -P表示密码,-P ''表示空密码
    之后系统会提示输入生成的密钥文件的文件名,可以输入任意名称,比如id_rsa,回车
    系统会在当前目录下生成id_rsa与id_rsa.pub两个文件

    2.在根目录下新建.ssh文件夹,将生成的密钥文件拷贝过去

    mkdir -p ~/.ssh
    -p选项表示如果文件夹已经存在则不再新建。
    然后将之前生成的两个文件都拷贝到.ssh文件夹中
    cp id_rsa* ~/.ssh/

    3.把公钥文件id_rsa.pub拷贝到需要登录的服务器上
    用scp命令

    scp -p port ~/.ssh/id_rsa.pub username@ip_address:~
    -P表示要登录服务器的端口好,不加默认为22。
    之后系统会提示输入密码,输入即可完成拷贝

    4.登录远程服务器,在用户根目录下新建.ssh文件夹(如果不存在),在其中新建authorized_keys文件(如果不存在),把id_rsa.pub添加到authorized_keys文件中

    mkdir -p ~/.ssh
    这是在远程服务器上新建ssh文件夹

    cat id_rsa.pub >> .ssh/authorized_keys
    将id_rsa.pub文件添加到authorized_keys文件中(如文件不存在则新建)
    注意:要保证.ssh与authorized_keys用户自己都有写权限

    5.退出当前远程登录,之后就可以不使用密码远程登录了

  • 相关阅读:
    re模块详解
    PythonS12-day4学习笔记
    Python-day3作业-haproxy配置文件管理脚本
    Python——Day3知识点——文件操作
    Python-Day3知识点——深浅拷贝、函数基本定义、内置函数
    collections系列
    set集合
    服务器三大体系SMP、NUMA、MPP介绍
    CPU指令集
    PS与TOP详解
  • 原文地址:https://www.cnblogs.com/ytb-wpq/p/6929454.html
Copyright © 2011-2022 走看看