■ SSH协议
■ OpenSSH
■ 服务监听选项
[root@localhost ~]# vi /etc/ssh/sshd_ config
......
Port 22
ListenAddress 172.16.16.22 //监听端口要填管理平面IP地址;(类型分为管理平面,数据平面)
Protocol 2
UseDNS no
■ 用户登录控制
[root@localhost ~]# vi /etc/ssh/sshd_ config
LoginGrace Time 2m
PermitRootL ogin no
MaxAuthTries 6
PermitEmptyPasswords no //AllowUsers不要与DenyUsers同时用
.......
AllowUsers jerry admin@61 .23.24.25
■ 登录验证方式
[root@localhost ~]# vi /etc/ssh/sshd_ config
......
PasswordAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_ keys
启用密码验证、密钥对验证、指定公钥库位置
■ ssh命令----远程安全登录
ssh user@host
■ ssh命令----远程安全复制
格式1:scp user@host:file file2
格式2:scp file1 user@host:file2
■ ssh命令----安全FTP上下载
sftp user@host
■ 在客户机中创建密钥对
[zhangsan@localhost ~]$ ssh-keygen -t ecdsa
Generating public/private ecdsa key pair.
Enter file in which to save the key (/home/zhangsan/ .ssh/id_ ecdsa):
Created directory '/home/zhangsan/ .ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again: //设置密钥短语
Your identification has been saved in /home/zhangsan/.ssh/id_ ecdsa. //私钥文件位置
■ 将公钥文件上传至服务器
[zhangsan@localhos~]$ scp ~/.ssh/id+ecdsa.pub [email protected]:/tmp
■ 在服务器中导入公钥文本
[root@localhost ~]# mkdir /home/lisi/.ssh/
[root@localhost ~]# cat /tmp/id_ _ecdsa.pub >> /home/lisi/.ssh/authorized_ _keys
[root@localhost ~]# tail -1 /home/lisi/.ssh/authorized_ keys
ecdsa-sha2-nistp256
AAAAE2VjZHNhLXNoY TItbmlzdHAyNT YAAAAIbmlzdHAyNTYAAABBBLJSnBhscY
BfnnHxSYAJEBD4sNkTLMF7itcFGM33RdeXU89QNQkMnCrCJHzAIZURrzpXG6M
p62mz9gRXUnARk8s=zhangsan@localhost
■ 客户端使用密钥对验证登录
[zhangsan@localhost ~]$ ssh [email protected]
[lisi@localhost ~]$ whoami
lisi
■ 第2步和第3步可以采用另外一种方法
ssh-copy-id -i 公钥文件 user@host
[zhangsan@localhost ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
■ 保护机制的实现方式
■ 访问控制策略的配置文件
■ 设置访问控制策略
■ 策略的应用顺序
1、检查hosts. allow,找到匹配则允许访问
2、再检查hosts.deny,找到则拒绝访问
3、若两个文件中均无匹配策略, 则默认允许访问
■ 策略应用示例
[root@localhost ~]# vi /etc/hosts.allow
sshd:61.63.65.67,192.168.2.*
[root@localhost ~]# vi /etc/hosts.deny
sshd:ALL
1、进入vi编辑
2、设置配置
3、重启一下
4、用root登录看一下能不能登录
登不进去
5、一分钟不登录就掉线
6、进入vi编辑
只允许ip地址20.0.0.1登录root账户、zk用户、zk1账户(20.0.0.1是我做实验的真机ip地址,也就是跳板机ip地址)
7、进入vi编辑
(密码验证 和 密钥对验证,我们只做密钥验证)
1、登录20.0.0.12服务器,然后用ssh远程登录20.0.0.4的root账户
** 将本端文件拷到对端(20.0.0.4是服务器端、20.0.0.12是客户端)**
1、创建一个文件
2、复制到指定的地方
3、进到20.0.0.12里面进入、opt目录看一下是否有这个文件
** 将对端文件拷到本端(20.0.0.4是服务器端、20.0.0.12是客户端) **
1、在服务器端/opt目录下创建一个2.txt文件
2、在客户端复制服务器端/opt目录下的2.txt文件到自己的/opt文件里
3、可以查看一下
1、用sftp登录到20.0.0.12
2、用put命令上传一个1.txt文件
3、用get命令下载一个3.txt文件
1、通过ssh-keygen工具为当前用户创建密钥文件,-t 选项是用于指定算法类型,并生成基于rsa算法的SSH密钥对(公钥、密钥)文件
然后回车、回车、回车
2、我们可以查看一下这个公钥创建了没有
3、将公钥文件上传至服务器
4、去服务器看一下公钥上传过来了没
5、ssh直接登录到20.0.0.12,登录不需要密码直接登录
1、进入hosts.allow vi编辑
2、添加允许策略,允许20.0.0.0网段ip访问
3、进入hosts.deny vi编辑
4、拒绝所有
5、进入hosts.allow vi编辑
我们把ip随便改一下,这样本机就会进不去(本机ip是20.0.0.4)
6、然后20.0.0.4就不能登录
7、想在登陆就得把ip改回来或者去把hosts.deny里面的ALL去掉,这样也可以登录。