栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

远程访问及控制

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

远程访问及控制

tcp的22号端口

本章结构 SSH远程管理

1.配置OpenSSH服务端

2.是用SSH客户端程序

3.密钥对验证的SSH体系

TCP Wrappers访问控制

1.TCP Wrappers概述

2.TCP Wrappers访问策略

OpenSSH服务器

SSH(Secure Shell)协议

1,是一种安全通道协议

2,对通信数据进行了加密处理,用于远程管理

OpenSSH

服务名称:sshd

服务端主程序:/usr/sbin/sshd

服务端配置文件:/etc/ssh/sshd_config

服务监听选项

端口号,协议版本,监听IP地址

禁用反向解析

用户登录控制

禁用root用户,空密码用户

限制登录验证时间,重试次数

AllowUsers,DenyUsers

登录验证方式

1,密码验证:核对用户名,密码是否匹配

2,密钥对验证:核对客户的私钥,服务端公钥是否匹配

 

构建密钥对验证的SSH体系 整体实现过程

 

在客户机中创建密钥对

        1.ssh-keygen命令

        2.可用的加密算法:RSA, ECDSA或DSA

 将公钥文件上传至服务器

        任何方式均可(FTP, Email,SCP,HTTP。。。。)

在服务器中导入公钥文本

        1,将公钥文本添加至目标用户的公钥库

        2,默认公钥位置:~/.ssh/authorized_keys

客户端使用密钥对验证登录

        1,验证用户:服务端的用户lisi

        2,验证密码:客户端的用户zhangsan的私钥短语

第二步和第三步可以采用另外一种方法

ssh-copy-id  -i  公钥文件 user@host

验证密码后,会将公钥自动添加到目标主机user宿主目录下的.ssh/authorized_keys文件结尾

[zhangsan@localhost ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub lisi@172.16.16.22

TCP Wrappers概述 保护原理

 保护机制的实现方式

        1,通过tcpd程序对其他服务程序进行包装

        2,由其他服务程序调用libwarp.so.*链接库

访问控制策略的配置文件

/etc/hosts.allow
/etc/hosts.deny

设置访问控制策略

策略格式:服务程序列表:客户端地址列表

服务程序列表

        多个服务以逗号分隔,ALL表示所有服务

 客户端地址列表

        多个地址以逗号分隔,ALL表示所有地址

        允许使用通配符?和*

        网段地址,如192.168.4.或者192.168.4.0/255.255.255.0

        区域地址,如benet.com

策略的应用顺序

        检查hosts.allow,找到匹配则允许访问
        再检查hosts.deny,找到则拒绝访问
        若两个文件中均无匹配策略,则默认允许访问

实验

实验环境:

允许用户wzadm从任意地址登录,采用密钥对验证
允许用户jacky从主机192.168.3.110登录
禁止其他所有用户远程登录

全部用centos7进行实验

所有机器都要关闭防火墙

systemctl stop firewalld
setenforce 0
网关服务器

IP配置

cd /etc/sysconfig/network-scripts/

vim ifcfg-ens33

TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
onBOOT=yes
IPADDR=192.168.152.100
NETMASK=255.255.255.0


vim ifcfg-ens37
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
onBOOT=yes
IPADDR=192.168.152.100
NETMASK=255.255.255.0

开启路由转发

vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1        添加这一行进行路由转发
内网的测试机
cd /etc/sysconfig/network-scripts/

vim ifcfg-ens33

TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
onBOOT=yes
IPADDR=192.168.152.110
NETMASK=255.255.255.0
GATEWAY=192.168.152.100

再客户机创建密钥对

ssh-keygen -t ecdsa    (算法)
        //指定私钥位置
        //设置私钥短语
        //确认所设置的短语
##以上敲了这条命令是默认下一步

###生成公钥的文件上传到服务器
scp ~/.ssh/id-ecdsa.pub root@192.168.152.110

web网站(ssh)

vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
onBOOT=yes
IPADDR=192.168.152.110
NETMASK=255.255.255.0
GATEWAY=192.168.152.100
DNS=202.96.134.133

创建用户和配置密码

useradd wzadm
passwd wzadm 

更改用户 wzadm 的密码 。
新的 密码:
无效的密码: 密码未通过字典检查 - 过于简单化/系统化
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。


useradd jacky
passwd jacky

更改用户 jacky 的密码 。
新的 密码:
无效的密码: 密码未通过字典检查 - 过于简单化/系统化
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

在服务器中导入公钥文本

 mkdir /home/wzadm/.ssh

cat /tmp/id_ecdsa.pub >> /home/wzadm/.ssh/authorized_keys

tail -1 /home/wzadm/.ssh/authorized_keys 
ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMLthxysLY71wfqf/Q0ufq5mQi4A3KcEzrc7FAXNfpC1COCi/nFdVqMu7VnGdcg2NNQ2oNSyrx6n6rjG1+rrti0= root@localhost.localdomain

ll /home/wzadm/.ssh/authorized_keys 
-rw-r--r--. 1 root root 188 2月  16 09:21 /home/wzadm/.ssh/authorized_keys

进行测试

外网测试机

TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
onBOOT=yes
IPADDR=218.29.30.218
NETMASK=255.255.255.0
GATEWAY=218.29.30.31

进行ssh登录

ssh wzadm@192.168.152.110

[root@localhost ~]# ifconfig ens33
ens33: flags=4163  mtu 1500
        inet 192.168.152.110  netmask 255.255.255.0  broadcast 192.168.152.255
        ether 00:0c:29:e1:a0:b6  txqueuelen 1000  (Ethernet)
        RX packets 19008  bytes 1457987 (1.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5809  bytes 617077 (602.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

修改TCP Wrappers

修改配置文件允许访问

vim /etc/hosts.allow 


sshd:192.168.152.120

拒绝访问

vim /etc/hosts.deny 

sshd:ALL

测试

在内网里面尝试登录

ssh jacky@192.168.152.110
jacky@192.168.152.110'S password:                输入密码
Last login: Web Feb 16 09:26:29 2022 from 192.168.152.128

ifconfig ens33
ens33: flags=4163  mtu 1500
        inet 192.168.152.110  netmask 255.255.255.0  broadcast 192.168.152.255
        ether 00:0c:29:e1:a0:b6  txqueuelen 1000  (Ethernet)
        RX packets 19008  bytes 1457987 (1.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5809  bytes 617077 (602.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

从外网进行访问

ssh jacky@192.168.152.110
ssh_exchange_identification:read:Connection reset by peer

访问失败

实验完成

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/746870.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号