ssh

Catalogue
  1. 1. 命令
    1. 1.1. 生成ssh key
    2. 1.2. ssh自带的sftp功能
  2. 2. 文件
    1. 2.1. known_hosts文件
    2. 2.2. id_rsa
    3. 2.3. id_rsa.pub
    4. 2.4. authorized_keys

配置文件:/etc/ssh/sshd_config

目录:/root/.sshd

命令

ssh命令_参考链接

生成ssh key

用户是X在执行 ssh-keygen 时会在~/.ssh这个目录里面产生所需要的两把Keys

分别是私钥(id_rsa) 与公钥(id_rsa.pub)

密钥有两种类型rsa和dsa两种,-t用来指定密钥类型,-t rsa是将密钥类型指定为rsa,-C是公钥中的备注,通常指定为自己的邮箱。

1
2
3
ssh-keygen -t rsa -C "yourname@email.com"

然后设置你的密码(邮箱可以不写)

ssh自带的sftp功能

  1. Window和Linux的传输工具
    1
    2
    3
    wincp   filezip                   
    sftp -->基于ssh的安全加密传输
    samba
  2. sftp客户端连接
    1
    2
    3
    sftp -oPort=22 root@192.168.25.137                   
    put /etc/hosts /tmp
    get /etc/hosts /home/omd
  3. sftp小结:
    1
    2
    3
    4
    1.linux下使用命令: sftp -oPort=22 root@x.x.x.x                   
    2.put加客户端本地路径上传
    3.get下载服务器端内容到本地
    4.远程连接默认连接用户的家目录

文件

known_hosts文件

这个文件主要是用来记录服务器端的Host,IP以及rsa文件的

常见报错:

访问服务器时,报Host key verification failed,主机密钥验证失败。

主机就是自己的电脑了,密钥失败主要有两种情况:

一、RSA密钥改了;

二、known_hosts文件中存在缓存记录,如果不是RSA的问题,那应该就是known_hosts文件的问题了

如果是第二种的话,把缓存删了就行

第二种的解决办法

id_rsa

主机的私钥

id_rsa.pub

主机的公钥

authorized_keys

把自己主机的公钥放进目标主机的authorized_keys里面,就可以实现免密登录