7.Linux系统中的sshd服务及服务管理命令

Lesson 7 Linux系统中的sshd服务及服务管理命令

1. Linux系统的sshd服务
1.1 sshd简介

ssh=secure shell
客户端主机通过网络在服务端主机中开启服务端主机shell的服务
客户端通过网络连接服务端,并且控制服务端,也就是客户端开启了服务端的shell

1.2 配置实验网络

此实验需要两台主机,一台作为服务器端(server),desktop另一台作为客户端(client)
若任意一台主机不知道ip,可以采用 ifconfig eth0 查看

配置虚拟机ip

Step1:在真机打开两个虚拟机 desktop 和 server
Step2::根据真机的ip地址配置两台主机的ip,desktop的ip为真机ip最后两位加100,即172.25.254.114,该主机用于客户端测试

server的ip为真机ip加200,即172.25.254.214,该主机用于服务端配置

具体操作如下:
输入nm-connection-editornm-connection-editor
在这里插入图片描述
删除原来的配置文件,选择add自己创建自己想要的ip
在这里插入图片描述
选择自己的网卡
在这里插入图片描述
设置ipv4,在Method下选择Manual在Add输入自己想要的ip地址,网络掩码设为24,网关部分空格一下即可,点击Save保存即可。如果有空行则删掉空行,否则无法点击Save
在这里插入图片描述
修改主机名
修改方式:在服务器端的shell中执行hostnamectl set-hostname xxx.example.com eg:hostnamectl set-hostnamewestos_server.westos.com 完成操作后重新打开一个新shell,即刻生效

同样,在客户端的shell中执行hostnamectl set-hostname xxx.example.com eg:hostnamectl set-hostnamewestos_client.westos.com 完成操作后重新打开一个新shell,即刻生效
在这里插入图片描述
在两台主机的shell中分别删除 /root/.ssh/(删除这个目录rm -fr /root/.ssh 或者删除这个目录下的文件rm -rf /root/.ssh/*均可以)
在这里插入图片描述
:删除/root/.ssh/的目的是客户端主机第一次连接服务端主机会在这个目录下生成known_hosts这个文件,为了验证这个实验效果,所以先将这个目录清空或者直接删除这个隐藏目录
可以在家目录下面输入ls -a(查看所有文件,包括非隐藏文件和隐藏文件) 或者l.(只查看隐藏文件)

1.3 客户端的连接
  1. 让远程主机可以通过网络访问sshd服务,开始一个安全shell,在客户端打开
    命令格式为: ssh 远程主机用户@远程主机ip(也就是我这里的服务端的用户和ip)本次实验远程主机ip为172.25.254.214
  2. 这种登陆方式只能在服务端进行文本操作,不能打开图形,要想打开图形只需在命令中间加入 -X 即可
    命令格式为: ssh -X 远程主机用户@远程主机ip
    在这里插入图片描述
    :第一次链接陌生主机时要建立认证文件(/.ssh/know_hosts文件),所以会询问是否建立,需要输入yes,再次链接此台主机时,由于已经生成/.ssh/know_host文件,所以不需要再次输入yes
1.4 远程复制

1)scp file root@ip:dir ##远程上传

2)scp root@ip:file dir ##远程下载
在这里插入图片描述

2. sshd 的 key认证
2.1 sshd服务的免密操作

为什么要进行免密操作

如果客户端知道服务端主机的ip地址和密码,就可以远程操控服务端
如果任意一个客户端知道服务端主机的ip地址和密码,并且知道它里面的重要文件存放路径,就可以拷贝服务端的任何文件,这样的操作在企业中非常不安全

怎样进行免密操作
采用钥匙和锁的方式,服务端想让客户端什么时候连就什么时候连
1. 生成公钥私钥

在服务端输入:ssh-keygen,生成钥匙和密码 , id_rsa是钥匙id_rsa.pub 是锁

id_rsa ##私钥,就是钥匙
id_rsa.pub ##公钥,就是锁

按三次回车,第一次:钥匙和密码存放路径(直接回车表示存放在默认路径下)第二次是设置密码(直接回车,不设置密码)第三次回车是确认密码(直接回车,不确认密码)
在这里插入图片描述
2. 添加key认证方式
在服务端输入:ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.214先给自己上锁,也就是给服务端上锁
在这里插入图片描述
3. 分发钥匙给client主机
在服务端输入:scp /root/.ssh/id_rsa root@172.25.254.111:/root/.ssh/ 将钥匙传给客户端,客户端/root/.ssh/的这个文件(目录)必须存在 ,相当于上传
在这里插入图片描述
:如果客户端没有/root/.ssh/这个文件,客户端使用密码方式重新连接一次服务端,会生成该文件,然后就可以将钥匙传给客户端了
5.客户端使用密码方式重新连接一次服务端,会生成该文件,并且退出

4. 测试

验证客户端是否可以免密连接服务端

2.2 sshd服务的安全认证

openssh-server配置文件

/etc/ssh/sshd_config
78 PasswordAuthentication yes/no##是否开启用户密码认证,yes为支持no为关闭
PermitRootLogin yes/no是否允许超级用户登陆
AllowUsers student用户白名单,只有在名单中出现的用户可以使用sshd建立shell
DenyUsers student root用户黑名单

48 PermitRootLogin yes|no ##是否允许超级用户登陆
在这里插入图片描述
78 PasswordAuthentication yes|no ##是否开启用户密码认证,yes为支持no为关闭
在这里插入图片描述
50 AllowUsers student westos ##用户白名单,只有在名单中出现的用户可以使用sshd建立shell
在这里插入图片描述
52 DenyUsers westos ##用户黑名单
在这里插入图片描述

3. 添加ssh登陆信息

vim /etc/motd ##文件内容就是登录后显示的信息

4. 用户的登陆审计
4.1 什么是用户的登陆审计

在服务端里面查看登陆服务端的客户端的相关信息

4.2 怎样进行用户的登陆审计

在服务端直接输入命令即可查看
w #查看正在使用当前系统的用户
在这里插入图片描述
w -f #查看使用的客户端来源,显示主机名等信息
w -i # 显示连接我的主机的ip
在这里插入图片描述
last#查看使用过并且退出的用户信息
在这里插入图片描述
lastb#查看试图登陆但没成功的用户信息
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值