Linux运维之SSH

1.什么是SSH

SSH是Secure Shell的缩写,是一个建立在应用层上的安全远程管理协议。为远程登录会话和其他网络服务提供安全性。默认22端口。

2.SSH的登录验证模式

一篇博客图解SSH原理
b站视频尚硅谷2019年Linux运维+云计算②:Linux网络服务管理和MySQL+Redis数据库管理
关于这个有很多,需要反复看

3.配置SSH服务

3.1环境准备

两台Linux操作系统的主机(CentOS6.x),可以正常通信,主机名不同。
修改主机名方式:hostname node1,hostname node2,hostname node3
临时关闭防护功能:
iptables -F #清空防火墙规则
setenforce 0 #临时关闭SELinux
永久关闭防护功能:
chkconfig iptables off #设置防火墙开机不自启动
sed -i ‘7s/enforcing/disabled/’ /etc/selinux/config #永久关闭SELinux
注意:以上两条命令执行之后需要重启服务器

vim /etc/selinux/config出现下图:
在这里插入图片描述

先来看一下防火墙规则加载时候的状态:
iptables -L
在这里插入图片描述
临时把规则清空:
iptables -F
再iptables -L

在这里插入图片描述
查看SELinux的状态命令:getenforce
在这里插入图片描述
临时关闭:setenforce 0
在这里插入图片描述
永久关闭:服务每次开机都不自启,iptables开机 不自启
首先看一下iptables服务:chkconfig --list iptables
在这里插入图片描述
现在2345级别开机自启
关闭命令:chkconfig iptables off
在这里插入图片描述
打开vim /etc/selinux/config
在这里插入图片描述
将上图改为下图:
在这里插入图片描述
改完之后验证:
在这里插入图片描述
在这里插入图片描述

3.2用户密码验证

Linux 利用远程工具登录使用ssh格式:
ssh [email protected]
Linux与Linux互通使用ssh格式:
在这里插入图片描述
退出命令:exit

3.3密钥对验证

3.3.1Linux主机之间的密钥对登录验证

  1. 客户端生成密钥对文件
    ssh-keygen -t rsa -b 2048
    -t 指定加密类型(rsa/dsa等)
    -b 指定密钥对加密长度
    询问1:执行过程中会询问保存位置,一般默认保存在当前用户家目录下的.ssh/目录
    询问2:是否对密钥文件进行加密
    加密:若加密,则在调用密钥文件时需要先验证密钥的密码,密码正确才能使用密钥文件
    不加密:若不加密,则密钥文件可以直接被调用,整个登录验证过程无需输入任何密码,即为免密登录
  2. 将公钥文件上传至服务器端
    ssh-copy-id 用户名@服务器IP地址
    #该用户名和要用来登录服务器的用户名一致
  3. 客户端尝试登录服务器
    ssh 用户名@服务器IP地址
    #密钥对验证优先级大于账户密码验证
    在这里插入图片描述
    询问过程直接回车
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    不需要密码

3.3.2Windows与Linux之间的密钥对登录验证

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.4禁止密码登录

当我们学会了使用密钥对进行验证后,建议生产环境下将账户密码登录功能关掉
配置文件:/etc/ssh/sshd_config
选项:PasswordAuthentication no
注意:ssh的配置文件中,并不是注释掉的就是不生效的,有些是默认生效,需要修改时一定要取消注释再修改
在这里插入图片描述
vim sshd_config进入:
在这里插入图片描述
重启sshd配置文件
在这里插入图片描述

3.5禁止SSHroot用户登录

你得用一个别的用户user1,再操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.6修改默认端口、限制 ssh 监听 IP

一般都会修改端口,尽量修改一个高位端口(范围1-65535)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用xshell时输入下面命令:
在这里插入图片描述
在这里插入图片描述
Linux连接Linux使用命令:ssh -p 端口号 root@IP
在这里插入图片描述
限制IP登录:
在这里插入图片描述
在这里插入图片描述
想要虚拟机有多个IP地址,通过命令:ifconfig eth0:0 192.168.88.22
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发布了27 篇原创文章 · 获赞 3 · 访问量 696

猜你喜欢

转载自blog.csdn.net/weixin_43849280/article/details/102967170