openssh-server

来源:互联网 发布:java的compareto 编辑:程序博客网 时间:2024/06/05 02:56

下面为做的例子为172.25.254.237连接自己主机
1.openssh-server
功能:让远程主机可以通过网络访问sshd服务,开始一个安全shell

2.客户端连接方式
ssh 远程主机用户@远程主机ip
这里写图片描述
[root@foundation37 ~]# ssh root@172.25.254.237 ##以root用户登陆该ip
The authenticity of host ‘172.25.254.237 (172.25.254.237)’ 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 ##连接陌生主机时需要建立认证关系
Warning: Permanently added ‘172.25.254.237’ (ECDSA) to the list of known hosts.
root@172.25.254.237’s password: ##root用户密码
Last login: Fri Jul 21 02:51:24 2017 ##登陆时间
[root@localhost ~]# ##登陆成功

加其他参数的用法:
ssh 远程主机用户@远程主机ip -X ##调用远程主机图形工具
ssh 远程主机用户@远程主机ip command ##直接在远程主机运行某条命令

3.sshkey加密

1.生成公钥私钥
这里写图片描述
[root@localhost ~# 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. |
|** .. . |
|*+o. E.. |
|= =. o. |
|.. +. ..S |
| . … |
| o . |
| . . |
| |
+—————–+
[root@server0 ~]# ls /root/.ssh/ ##生成两个文件
id_rsa id_rsa.pub
id_rsa ##私钥,就是钥匙
id_rsa.pub ##公钥,就是锁

2.添加key认证方式
这里写图片描述
[root@localhost ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.237
ssh-copy-id ##添加key认证方式的工具
-i ##指定加密key文件
/root/.ssh/id_rsa.pub ##加密key
root ##加密用户为root
172.25.254.237 ##被加密主机ip。加密自己主机可以输入localhost

3.分发钥匙给client主机
[root@localhost ~]# scp /root/.ssh/id_rsa root@172.25.254.237:/root/.ssh/
##如果172.25.254.237这台主机没有连接过别的主机,就没有/root/.ssh目录 ,需要创建或者连接一次其他主机

4.测试
这里写图片描述
[root@ localhost ~]# ssh root@172.25.254.237 ##通过id_rsa直接连接不需要输入用户密码
Last login: Fri Jul 21 20:56:00 2017 from 172.25.254.137
[root@localhost ~]#

5.提升openssh的安全级别
1.openssh-server配置文件
/etc/ssh/sshd_config
这里写图片描述
这里写图片描述

48 PermitRootLogin yes|no ##是否允许超级用户登陆
49 AllowUsers student westos ##用户白名单,只有在名单中出现的用户可以使用sshd建立shell
78 PasswordAuthentication yes|no ##是否开启用户密码认证,yes为支持no为关闭
50 DenyUsers westos ##用户黑名单
systemctl restart sshd.service ##重启服务 ##需要重启服务配置文件内容才会生效

6.控制ssh客户端访问
vim /etc/hosts.deny
sshd: ALL ##拒绝所有人

vim /etc/hosts.allow
sshd:172.25.254.137 ##允许这个ip连接
sshd:172.25.254.137, 172.25.254.237 ##允许这两个ip连接
sshd:ALL EXCEPT 172.25.254.137 ##只不允许这个ip连接

ssh登陆提示修改
vim /etc/motd ##可更改登陆后显示的字符信息

注意:重启服务后这些修改才会生效