1.当前系统初始化进程
- 系统初始化进程可以对服务进行相应的控制
- systemd ##系统初始化进程
- pstree ##显示系统中的进程树
2.进程控制命令
ssh-------> sshd
服务器----> 客户端
systemctl | 服务控制命令 |
---|---|
systemctl status sshd | 查看服务状态,inactive(不可用),active(可用) |
systemctl start sshd | 开启服务 |
systemctl stop sshd | 关闭服务 |
systemctl restart sshd | 重启服务 |
systemctl reload sshd | 重新加载服务配置 |
systemctl enable sshd | 设定服务开机启动 |
systemctl disable sshd | 设定服务开机不启动 |
systemctl list-units | 列出已经开启服务当前状态 |
systemctl list-unit-files | 列出所有服务开机启动的状态,disable,enable,static |
systemctl list-dependencies | 列出服务的倚赖 |
systemctl set-default multi-user.target | 设定系统启动级别为多用户模式(无图形) |
systemctl set-default graphical.target | 设定系统启动级别为图形模式 |
3.添加sshd登录信息
- vim /etc/motd #文件内容就是登陆后显示的信息
4.用户的登陆审计
1.w
w | 查看正在使用当前系统的用户 |
---|---|
w -f | 查看使用来源 |
w -i | 显示ip |
相当于命令 ll /var/run/utmp
2.last
last #查看使用过并退出的用户信息
相当于命令 ll /var/log/wtmp
3.lastb
lastb #试图登陆但没成功
相当于命令 ll /var/log/btmp
5.sshd简介
1.ssh=secure shell,是应用层的安全协议。ssh目前较可靠,专为远程登陆会话和其他网络服务提供安全性的协议。利用ssh协议可以有效的防止远程管理过程中的信息泄露问题
2.可以通过网络在主机中开启shell服务
3.连接方式:
ssh username@ip | 文本模式的连接 |
---|---|
ssh -X username@ip | 可以在连接成功后开启图形 |
注意:
- 第一次连接陌生主机是要建立认证文件
- 因此会询问是否建立,此时需要输入yes
- 在连接此台主机时,由于已经生成~/.ssh/know_hosts文件,因此不需要再输入yes
[kiosk@foundation79 ~]$ ssh root@172.25.254.80
The authenticity of host '172.25.254.80 (172.25.254.80)' can't be established.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes ##在这里输入yes
Warning: Permanently added '172.25.254.80' (ECDSA) to the list of known hosts.
root@172.25.254.80's password: ##输入正确的密码
Last login: Mon Oct 14 13:36:02 2019
[root@dys ~]#
6.sshd的key认证
1.你必须为自己创建一对密匙,把公匙放在需要访问的服务器上。若你要连接到SSH服务器上,客户端软件就会向服务器发送请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公匙,然后把它和你发送过来的公匙进行比较。若两个密匙一致,服务器就用共用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件受到“质询”之后就可以用你的私人密匙解密再把它发送给服务器
2.生成认证KEY
3.加密服务
4.分发钥匙
5.测试
在客户主机中(172.25.254.81)
ssh root@172.25.254.80 #连接时发现直接登陆不需要root登陆系统的密码认证
6.sshd的安全设定
Port number | 17行左右,表示只能在此端口下通过登陆sshd的服务认证 |
---|---|
PasswordAuthentication yes/no | 78行左右,是否允许用户通过登陆系统的密码做sshd的认证 |
PermitRootLogin yes/no | 48行左右,是否允许root用户通过登陆sshd的服务的认证 |
Allowusers 用户名称 | 52行左右,设定用户白名单,白名单中显示名称表示只能此用户登陆 |
Denyusers 用户名称 | 53行左右,设定用户黑名单,黑名单中显示名称表示只有此用户不能登陆 |
ListenAddress ip | 20行左右,表示只能此ip登陆 |
注意:
- 默认端口为port 22
- 加了注释(#)就等同于默认
- 用户间用空格隔开
7.操作步骤
改为no表示不用输入密码即可登录
此外,更改完端口信息后还需关闭火墙,命令如下:systemctl stop firewalld