ssh

来源:互联网 发布:淘宝自主访问 编辑:程序博客网 时间:2024/06/16 12:50

openssh-server

1.openssh-server

功能:让远程主机可以通过网络访问sshd服务,开始一个安全shell

sshd(软件)提供ssh服务
/etc/ssh/sshd_config ##ssh的配置文件 :78 vim
systemctl status sshd.service ##查看sshd服务端的状态
shh认证方式: 密码
密钥
ssh-keygen ##生成密钥 默认路径为/root/shh/id_rsa

2.客户端连接方式

ssh 远程主机用户@远程主机ip

[root@localhost Desktop]# sshroot@172.25.254.229

The authenticity of host ‘172.25.254.229 (172.25.254.229)’ 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.229’ (ECDSA) to the list of known hosts.
root@172.25.254.229’s password: ##远程用户密码
Last login: Fri Jul 21 09:38:37 2017
[root@localhost ~]# ##登陆成功
这里写图片描述
这里写图片描述
ssh 远程主机用户@远程主机ip -X ##调用远程主机图形工具
ssh 远程主机用户@远程主机ip ‘command’ ##直接在远程主机运行某条命令

3.sshkey加密

1.生成公钥私钥
[root@localhost Desktop]# 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: ls
ab:3c:73:2e:c8:0b:75:c8:39:3a:46:a2:22:34:84:81 root@server0.example.com
Theid key’s randomart image is:
+–[ RSA 2048]—-+
|o |
|E. |
|.. |
|. . o |
|.o. * . S |
|oo.o o . |
|+ =. . . |
|o. oo.+.. |
| ..o*. |
+——[root@localhost Desktop]# ls /root/.ssh/
authorized_keys id_rsa id_rsa.pub known_hosts r是钥匙
id_rsa.pub ##公钥,就是锁
这里写图片描述

2.添加key认证方式

[root@localhost Desktop]# ssh-copy-id -i /root/.ssh/id_rsa.pub  root@172.25.0.11

ssh-copy-id ##添加key认证方式的工具
-i ##指定加密key文件
/rooa.pub ##加密key
root ##加密用户为root
172.25.0.11 ##被加密主机ip
这里写图片描述

3.分发钥匙给client主机
[root@localhost Desktop]# scp /root/.ssh/id_rsa root@172.25.254.129:/root/.ssh/
这里写图片描述

4.测试

[root@desktop0 ~]# ssh root@172.25.254.229 ##通过id_rsa直接连接不需要输入用户密码
Last login: Mon Oct 3 03:58:10 2016 from 172.25.0.250
[root@server0 ~]# exit ##退出server

实验:为server虚拟机的root用户添加锁,将其私钥给desktop的root用户,当其访问server的root用户时可以免密登陆,而访问server的其他用户时需要密码登陆;desktop的其他用户登陆server的任何用户时需要密码登陆。
在server上添加westos和lee用户
这里写图片描述
在客户端登录server上的root,student,westos,lee用户
这里写图片描述

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 lee ##用户黑名单,不允许lee登陆

在server下设置其配置文件,设置为免密登陆,不允许超级用户登陆,只允许student、westos登陆

2.控制ssh客户端访问

vim /etc/hosts.deny ##即时生效
sshd:ALL ##拒绝所有人链接sshd服务

vim /etc/hosts.allow ##即时生效
sshd:172.25.254.129 ##允许250主机链接sshd

sshd:172.25.254.29, 172.25.254.129 ##允许29和129链接

sshd:ALL EXCEPT 172.25.254.29 ##只不允许29链接sshd
实验:设置server的/etc/hosts.deny sshd:ALL,/etc/hosts.allow sshd:ALL EXCEPT 172.25.254.29(不允许主机上的所有用户访问),虚拟机desktop的两个用户root可远程访问server的root和student用户,而主机上的用户不可以
虚拟机的root访问server的root时,它有root的密匙,所以免密登陆
虚拟机的root访问server的student时,需要输入student的密码才能成功登陆
真机的kiosk访问server的root、student时,不能成功访问
这里写图片描述
这里写图片描述
这里写图片描述
3.ssh修改登陆提示
vim /etc/motd ##显示登陆后字符,即时生效,在登陆后就会显示所写的字符
实验:设置登陆提示Welcome
1>修改server的root用户的/etc/motd文件
2>desktop下的root用户登陆server的root用户
1.
这里写图片描述
2.
这里写图片描述

原创粉丝点击