unit9.openssh-server
1.openssh-server功能
让远程主机可以通过网络访问sshd服务,开始一个安全shell
2.客户端连接方式
ssh 远程主机用户@远程主机ip
[root@desktop0 ~]# ssh root@172.25.254.137
Are you sure you want to continue connecting (yes/no)? yes 第一次连接陌生主机时需要建立认证关系
root@172.25.254.137’s password: 远程用户密码
Last login: xxx
[root@server0 ~]# 登陆成功
ssh 远程主机用户@远程主机ip -X 调用远程主机图形工具
ssh 远程主机用户@远程主机ip command 直接在远程主机运行某条命令
3.sshkey加密
1.生成公钥私钥
[root@server0 ~]# ssh-keygen 生成公钥私钥命令
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):[enter] 加密字符保存文件(建议用默认)
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase): [enter] 密钥密码,必须>4个字符
Enter same passphrase again: [enter] 确认密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ab:3c:73:2e:c8:0b:75:c8:39:3a:46:a2:22:34:84:81 root@server0.example.com
The key’s randomart image is:
+–[ RSA 2048]—-+
|o |
|E. |
|.. |
|. . o |
|.o. * . S |
|oo.o o . |
|+ =. . . |
|o. oo.+.. |
| ..o*. |
+—————–+(基本靠系统默认功能出现)
[root@server0 ~]# ls /root/.ssh/
id_rsa id_rsa.pub
id_rsa 私钥,就是钥匙
id_rsa.pub 公钥,就是锁
2.添加key认证方式
[root@server0 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.0.11
ssh-copy-id ##添加key认证方式的工具
-i ##指定加密key文件
/root/.ssh/id_rsa.pub ##加密key
root ##加密用户为root
172.25.254.137 ##被加密主机ip
3.分发钥匙给client主机
[root@server0 ~]# scp /root/.ssh/id_rsa root@172.25.254.137:/root/.ssh/
4.测试
[root@desktop0 ~]# ssh root@172.25.254.137 通过id_rsa直接连接不需要输入用户密码
Last login: xxx from 172.25.254.37
[root@server0 ~]#
服务端:
1、ssh-keygen (生成钥匙和锁)
2、ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.56(自己的主机用户及ip)
给自己的主机添加key认证方式
3、scp /root/.ssh/id_rsa root@172.25.254.156:/root/.ssh/(客户端的用户及地址)
发钥匙给到客户端主机
4、vim /etc/ssh/sshd_config 修改配置文件,将密码登陆改为no(78行):wq保存退出
5、systemctl restart sshd.service 重启配置文件,使之生效
客户端:
ssh连接服务端。看没有密码是否可以登陆。
4.提升openssh的安全级别
1.openssh-server配置文件
/etc/ssh/sshd_config
78 PasswordAuthentication yes|no ##是否开启用户密码认证,yes为支持no为关闭
48 PermitRootLogin yes|no ##是否允许超级用户登陆
49 AllowUsers student westos ##用户白名单,只有在名单中出现的用户可以使用sshd建立shell.允许少部分人登陆。
50 DenyUsers westos ##用户黑名单。允许大部分人登陆。