快速上手SSH远程连接

目录

SSH带外管理

一、概述

二、 配置文件

三、命令解析

四、登录方式配置

1、用户名密码登录

2、公钥验证登录

四、实操


SSH带外管理

一、概述

ssh服务,一种远程管理连接工具,在CentOS7系统中默认安装并开机自启的。

SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录,远程复制等功能。

监听tcp的22号端口。软件包名称:openssh

配置文件目录:/etc/ssh,sshd_config 服务端配置文件;ssh_config 客户端配置文件。

客户端提供:ssh、scp、sftp命令

服务端提供:sftp服务、ssh服务

二、 配置文件

服务端配置文件: sshd_config

Port 22 #监听端口
AddressFamily any #ip地址版本
ListenAddress 0.0.0.0 #监听地址,ipv4
ListenAddress :: #监听地址,ipv6
PermitRootLogin yes #是否允许root用户登录
MaxAuthTries 6 #重新连接最大次数
MaxSessions 10 #建立不同用户的会话的最大个数
PubkeyAuthentication yes #是否启用公钥对验证登录
AuthorizedKeysFile      .ssh/authorized_keys #存储客户端公钥信息的文件
PasswordAuthentication yes #是否启用密码验证登录
PermitEmptyPasswords no #是否允许空密码登录
UsePAM yes #启用系统用户及密码进行验证登录
UseDNS no #是否启用ssh内部的解析,会影响连接速度

客户端配置文件: ssh_config,设置ssh命令连接的关键配置

Port 22 #设置ssh命令连接的默认端口

三、命令解析

###远程登录命令###
###语法:####
ssh [选项] [username@]ssh服务器的监听IP地址或者主机名(使用主机名时,保证客户端能够解析主机名)
####选项:######
-p port  指定连接服务器的监听端口
###远程拷贝命令####
###语法:####
##将本机的文件拷贝到远程主机##
scp  本机的文件路径  [username@]ssh服务器的监听IP地址或者主机名:/远程主机存储路径
##将远程主机的文件拷贝到本机##
scp    [username@]ssh服务器的监听IP地址或者主机名:/远程主机存储路径 本机的文件路径
###sftp服务登录命令###
sftp [选项] [username@]ssh服务器的监听IP地址或者主机名(使用主机名时,保证客户端能够解析主机名)

四、登录方式配置

1、用户名密码登录

默认方式,直接可以使用

2、公钥验证登录

密码学基础:

概念解析
对称加密双方采用相同的秘钥,安全性较低
非对称加密双方采用不同的秘钥,安全性较高
公钥大家都可以知道的秘钥。
私钥只有自己知道的秘钥。能够证明自己的身份信息

注意:公钥和私钥不能相互推导!!!

公钥与私钥之间能够相互解密!!!

数据加密

使用对端的公钥加密,接收端收到数据后,使用自己的私钥解密。作用是保证数据完整性。

数字签名

私用自己的私钥加密,接收端收到数据后,使用发送端的公钥解密。作用是保证发送者的身份唯一性。

ssh客户端生成密钥对

###生成密钥对的命令###
ssh-keygen ,默认是交互式
###常用选项:####
-t : 指定秘钥算法
-N : 指定秘钥短语
-f : 指定秘钥存储路径
[root@s1 .ssh]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
###非交互生成密钥对####
[zhx1@s1 ~]$ ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa
###默认保存到当前执行该命令的用户家目录中的.ssh目录#####
[root@s1 .ssh]# ls
id_rsa  id_rsa.pub
###id_rsa: 私钥;id_rsa.pub: 公钥###
###拷贝公钥命令###
ssh-copy-id 
###ssh命令的特殊用法:远程执行ssh服务器的指令####
[root@s1 .ssh]# ssh 192.168.115.128 ip a
##注意:不能执行ssh-copy-id命令####

四、实操

客户端使用user1用户,并且以服务端的用户user2的身份登录,使用公钥对验证登录。

在主机1上创建user1
[root@localhost ~]# useradd user1
​
在主机2创建user2
[root@localhost ~]# useradd user2
​
登录user1,并且给user2设置密码(为1)
[root@localhost ~]# su - user1
​
并且给user2设置密码(为1)
[root@localhost ~]# passwd user2
更改用户 user2 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
​
在主机1里生成钥对
[user1@localhost ~]$ ssh-keygen                                               ##(交互式生成)
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user1/.ssh/id_rsa):                ##存储私钥的位置,默认为()里的路径
Created directory '/home/user1/.ssh'.
Enter passphrase (empty for no passphrase):                                      
Enter same passphrase again:                                                  ##设置密码短语(一般为空)    
Your identification has been saved in /home/user1/.ssh/id_rsa.
Your public key has been saved in /home/user1/.ssh/id_rsa.pub.
The key fingerprint is:                                                           
SHA256:+wM4TaesOAxToy+FDNl6CHR5MGYb0nJ0StqvMiEF4LU user1@localhost.localdomain
The key's randomart image is:                                                     
+---[RSA 2048]----+
|+.oXo.           |
|.+O=B.           |
|.==E.            |
|+.. +   . .      |
|o* + o =So       |
|+ O o o =.       |
| + B . o..       |
|  + = .  ..      |
|   . .    ..     |
+----[SHA256]-----+
​
在生成钥对后,使用ssh-copy-id将钥对拷贝给主机2
[user1@localhost ~]$ ssh-copy-id user2@192.168.239.140
/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/user1/.ssh/id_rsa.pub"
The authenticity of host '192.168.239.140 (192.168.239.140)' can't be established.
ECDSA key fingerprint is SHA256:mcPIFK1593usLRK8zsfuNNsBn39Jt2MC2L/GP1fhA1I.
ECDSA key fingerprint is MD5:00:85:24:3b:89:ba:ab:7e:35:49:f7:21:d2:0e:c7:f7.
Are you sure you want to continue connecting (yes/no)? yes
/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
user2@192.168.239.140's password: 
​
Number of key(s) added: 1
​
Now try logging into the machine, with:   "ssh 'user2@192.168.239.140'"
and check to make sure that only the key(s) you wanted were added.
​
这样就可以免密,直接使用公钥对登录了
[user1@localhost ~]$ ssh user2@192.168.239.140
[user2@localhost ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:ed:de:55 brd ff:ff:ff:ff:ff:ff
    inet 192.168.239.140/24 brd 192.168.239.255 scope global noprefixroute dynamic ens33
       valid_lft 1670sec preferred_lft 1670sec
    inet6 fe80::657b:1e7b:896e:e502/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值