欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

ssh命令使用

程序员文章站 2022-03-12 09:23:51
ssh是什么 ssh是一种通信协议,用于与另一台计算机通信,有多个实现版本,openssh属于开源实现 中间人攻击 口令登录 登录成功后 公/私钥对 公钥登录 失败解决 ......

ssh是什么

ssh是一种通信协议,用于与另一台计算机通信,有多个实现版本,openssh属于开源实现

usage: ssh [-b bind_interface]
           [-b bind_address] [-c cipher_spec] [-d [bind_address:]port]
           [-e log_file] [-e escape_char] [-f configfile] [-i pkcs11]
           [-i identity_file] [-j [user@]host[:port]] [-l address]
           [-l login_name] [-m mac_spec] [-o ctl_cmd] [-o option] [-p port]
           [-q query_option] [-r address] [-s ctl_path] [-w host:port]
           [-w local_tun[:remote_tun]] destination [command]

//root账户登录
ssh xxx.xxx.xxx 

//指定用户 -l
ssh root@xxx.xxx.xxx

//指定端口 -p
ssh -p 123 xxx.xxx.xxx or
ssh -l root -p 123 xxx.xxx.xxx or
ssh -p 123 root@xxx.xxx.xxx

中间人攻击

ssh命令使用
ssh命令使用

口令登录

$ ssh user@host
  the authenticity of host 'host (xxx.xxx.xxx.xxx)' can't be established.
  rsa key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
  are you sure you want to continue connecting (yes/no)?
  
//基于中间人攻击问题,所以第一次登录无法确认主机安全性,可以根据rsa加密提供的key与远程主机的公钥进行对比

登录成功后

$ cat ~/.ssh/known_hosts

//用户系统会自动把当前公钥存起来
//下次连接这台主机时就知道这台主机的身份了,跳过警告部分

公/私钥对

公钥和私钥是成对的,它们互相解密。

公钥加密,私钥解密。

私钥数字签名,公钥验证。

公钥登录

ssh命令使用

$ ssh-keygen
//一路回车在~/.ssh/下生成2把钥匙

$ ssh-copy-id user@host
//将公钥传到主机

//公钥被放在 ~/.ssh/authorized_keys 

失败解决

// ubuntu系统
service ssh restart
// debian系统
/etc/init.d/ssh restart