sshd服务

一.sshd简介

sshd= secure shell
可以通过网络在主机中开机shell的服务

客户端软件

1.连接方式:

ssh			username@ip			##文本模式的连接
ssh	-X		username@ip			##可以在连接成功后开机图形

注意:
第一次连接陌生主机时需要建立认证文件
所以会询问是否建立,需要输入yes,退出时 Ctrl + d/exit。
再次连接此台主机时,因为已经生成~/.ssh/know_hosts文件所以不需要再次输入yes

2.远程复制

scp  file  root@ip:dir		##上传
scp  root@ip:file dir		##下载

效果演示

为了创造演示环境,现在有一台真机上安装有两台虚拟机:desktopserver
分别设置desktop(客户端)和server(服务端)的ip
desktop(客户端):172.25.254.144
server(服务端):172.25.254.244
使用nm-connection-editor图形界面
在这里插入图片描述
选择Add添加在这里插入图片描述
选择默认的Ethernet,然后Create…
在这里插入图片描述
Connection name : eth0
Device选择eth0
在这里插入图片描述
IPv4 Settings选项卡下Method选择Manual
Add->Address:172.25.254.144
Netmask:24
点Save保存即可
可以使用ifconfig eth0命令确认是否生效。
在这里插入图片描述
然后删除/root/.ssh文件夹以创造原始纯净的的环境

rm -fr /root/.ssh/

为了区别客户端与服务端,我们可以将其命名

hostnamectl set-hostname client_ssh.lilong.com

重开shell后可见新的主机名
在这里插入图片描述
同时通过,Edit>Profile Preferences>Colors选项更换颜色更直观区别。
server(服务器)的设置方法同客户端一致,ip为172.25.254.244,设置主机名为server_ssh.lilong.com

两台主机设置完成后,我们可以在其中一台主机使用ping命令来检测他们是否通畅
此处使用客户端client检测

ping 172.25.254.244

在这里插入图片描述
可见此时网络是通的,按下Ctrl + C退出检测

现在可以使用ssh命令连接远程主机了

ssh root@172.25.254.244

在这里插入图片描述
第一次登陆输入yes后输入所登陆远程用户的密码即可登陆成功,行首[root@server_ssh ~]表示此时登陆了远程主机的root用户。
==若此处使用ssh -X root@172.25.254.244登陆,则可以在登陆后调用图形界面 ==

现在我们尝试将客户端桌面上名为long的文件上传到服务器的桌面
首先建立文件

touch long

上传文件

scp long root@172.25.254.244/root/Desktop/

输入服务端root用户密码,传输完成

在这里插入图片描述
客户端的桌面上可以看到刚才上传的文件

在这里插入图片描述
在服务器中,是可以通过设置白名单与黑名单来限制指定IP连接的,修改下面两个文件即可
黑名单

etc/hosts.deny

白名单

etc/hosts.allow

黑名单表示拒绝所添加用户的远程连接,如要拒绝来自172.25.254.144的连接请求,其他ip可以正常连接,则可以编辑黑名单

vim etc/hosts.deny

在这里插入图片描述
保存退出后重启sshd服务即可生效
在这里插入图片描述
现在尝试使用客户端连接服务器发现连接失败
在这里插入图片描述
白名单的原理一样,但是作用相反,他只允许名单里的用户连接,而拒绝其他所有用户通过sshd服务连接。

二.sshd的key认证

通过上面的黑名单/白名单的方式虽然可以拒绝指定ip通过sshd连接,但是ip是可以自己更改的,这样做是不安全的,所以我们用sshd的key认证来加密服务器达到安全的目的。

原理是生成密钥,服务器使用该密钥加密,只有拥有该密钥的主机才能连接服务器。

第一步 生成密钥

首先为了还原原始纯净的环境,我们先删除/root/.ssh/下的所有文件

rm -fr /root/.ssh

生成密钥

ssh-keygen

在这里插入图片描述
此命令过程中会要求我们输入密钥文件名和密码,直接回车默认跳过即可,下面的命令则直接包含这两个过程

ssh-keygen -f /root/.ssh/id_rsa  -N “”	

在这里插入图片描述
效果相同

第三步 加密服务器

shh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.244

在这里插入图片描述
yes确定后输入服务器用户密码即可加密成功

第四步 取消默认认证方式(即密码认证)

vim /etc/ssh/sshd_config

将该文件78行PasswordAuthentication后的yes改为no即为关闭默认认证方式。
在这里插入图片描述
保存退出
然后重新加载sshd服务

systemctl reload sshd

到此,服务器已经加密且关闭了sshd密码认证,只有拥有密钥的主机才可以连接

第五步 给客户端发送密钥

给允许连接的主机发送密钥

scp /root/.ssh/id_rsa root@172.25.254.144:/root/.ssh/

在这里插入图片描述
这时在客户端的/root/.ssh/目录下可以看到密钥
在这里插入图片描述
此时连接服务器

ssh root@172.25.254.244

输入yes确认后即可直接连接上server并且无需输入密码

在这里插入图片描述

三.sshd的安全设定

通过设置/etc/ssh/sshd_config文件中的内容来更改sshd的安全设定

设定内容设定效果
78行 PasswordAuthentication yes/no是否允许用户通过系登陆的密码做sshd的认证
48行 PermitRootLogin yes/no是否允许root用户通过sshd服务的认证
52行 Allowusers student westos设定白名单,白名单出现默认不在名单中的用户不能使用sshd
53行 Denyusers westos设定黑名单,黑名单出现默认不在名单中的用户可以使用sshd

四. 添加sshd登陆信息

服务器中修改/etc/motd此文件中显示的内容就是登陆后显示的信息

vim /etc/motd

在这里插入图片描述
保存退出后客户端登陆后可看到该信息
在这里插入图片描述

五.用户的登陆审计

命令参数注释
w查看正在使用当前系统的用户
w-f查看使用来源
w-i显示IP

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

在这里插入图片描述

last ##查看使用过并退出的用户信息

在这里插入图片描述

lastb ##试图登陆但没成功的用户

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值