Linux--远程访问及控制(SSH+TCP Wrappers配置各种机制验证)
文章目录
- 前言
- 一、SSH远程管理
- 1.1配置Open SSH服务端
- 1.1OpenSSH服务器
- 1.2SSH各功能验证
- 1. 3scp命令-远程安全复制
- 1.4sftp命令-安全ftp上下载
- 二、TCP Wrappers
- 2.1TCP Wrappers概述
- 2.1.1保护原理
- 2.1.2保护机制的实现方式
- 2.1.3访问控制策略的配置文件
- 2.2TCP Wrappers策略应用
- 2.2.1设置访问控制策略
- 2.2.2策略的应用顺序
- 2.2.3策略应用示例
前言
在实际生产环境中,不可能一直在服务器本地对服务器进行相应的管理,大多数企业服务器都是通过远程登录的方式进行管理的。当需要从一个工作站管理数以百计的服务器主机时,远程维护的方式将更占优势。
一、SSH远程管理
SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。SSH协议对通信双方的数据传输进行加密处理,其中包括用户登录时输入的用户口令。比以往的Telnet(远程登录)、RSH(远程执行命令)等传统的方式相比,SSH协议提供了更好的安全性。
1.1配置Open SSH服务端
1.1OpenSSH服务器
SSH(Secure Shell)协议
是一种安全通道协议
对通信数据进行了加密处理,用于远程管理OpenSSH
服务名称:sshd
服务端主程序:/usr/sbin/sshd
服务端配置文件: /etc/ssh/sshd_config服务监听选项
端口号、协议版本、监听IP地址
禁用反向解析
[root@localhost ~]# vim /etc/ssh/sshd_config
......
Port 22 #端口号
ListenAddress 172.16.16.22 #监听地址
Protocol 2 #版本
UseDNS no #禁用反向解析
- 用户登录控制
禁用root用户、空密码用户
限制登录验证时间、重试次数
AllowUsers、 DenyUsers
[root@localhost ~]# vim /etc/ssh/sshd_config
LoginGraceTime 2m #会话时间
PermitRootLogin no #允许root用户进行登录 no
MaxAuthTries 6 #最大的验证尝试次数6次
PermitEmptyPasswords no #允许空密码登录 no
MaxSessions 10 #允许10个终端连接
......
AllowUsers jerry admin@61.23.24.25 #允许该用户从固定终端登录
- 登录验证方式
密码验证:核对用户名、密码是否匹配
密钥对验证:核对客户的私钥、服务端公钥是否匹配
[root@localhost ~]# vi /etc/ssh/sshd _config
......
PasswordAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_ keys
1.2SSH各功能验证
我们打开两台虚拟机,分别用xshell连接,一台取名csdn01作为服务端,ip地址为192.168.100.100、csdn02作为客户端,ip地址为192.168.100.200
使用xshell连接,可以看到22端口开启
客户端操作
[root@csdn02 ~]# ssh root@192.168.100.100 #登录服务端
The authenticity of host '192.168.100.100 (192.168.100.100)' can't be established.
ECDSA key fingerprint is SHA256:W1oJ4ViNwn7z4PRRWHDFQRjQ4DSFl14baD4rxfVvIwQ.
ECDSA key fingerprint is MD5:be:9b:20:d2:14:3d:ae:c7:6c:65:83:e2:7b:b0:25:45.
Are you sure you want to continue connecting (yes/no)? yes #输入yes确认登录
Warning: Permanently added '192.168.100.100' (ECDSA) to the list of known hosts.
root@192.168.100.100's password: #输入密码
Last login: Thu Jul 9 10:04:28 2020
[root@csdn01 ~]#
连接成功可以在客户端对服务端进行操作了
例:
[root@csdn01 ~]# vim /etc/ssh/sshd_config #编辑服务器配置文件
[root@csdn01 ~]# systemctl restart sshd #重启服务
这种方法其实存在一定的弊端,不是太安全,例如:
这种情况可以利用pam验证模块,限制切换root用户
对此项进行验证:
由此可以得出结论:默认尝试连接次数为3次,最大尝试次数为6次
- AllowUsers 白名单:仅允许某些用户,拒绝所有人 安全性场合高
- DenyUsers 黑名单:仅拒绝某些用户,允许所有人 安全性场合低
这两个功能在配置文件中没有,需要手动添加,例:
将tom、zahngsan添加到白名单后,尝试在客户端用lisi账号登录
打开第三个终端,名称为csdn03,IP地址192.168.100.144,在这个终端尝试使用zhangsan用户登录
构建密钥对验证的SSH体系
在客户端csdn02新建Jerry用户,切换到Jerry用户
[jerry@csdn02 ~]$ ssh-keygen -t ecdsa #生成密钥对
这时候在客户端登录服务端的tom用户需要输入的不再是tom的密码而是密钥的密码
每次登录输入密码太麻烦,可以添加免交互密码,使再次登录服务器的时候可以不用输入密码
1. 3scp命令-远程安全复制
scp复制文件命令分为两种:
scp user@host:file1 file2 #从服务端复制文件到客户端
scp file1 user@host:file2 #从客户端复制文件到服务端
参数 -r #递归复制
在拷贝过来的passwd文件中随意添加点内容再推回给服务端
1.4sftp命令-安全ftp上下载
二、TCP Wrappers
2.1TCP Wrappers概述
2.1.1保护原理
2.1.2保护机制的实现方式
- 方式1:通过tcpd程序对其他服务程序进行包装
- 方式2:由其他服务程序调用libwrap.so. *链接库
2.1.3访问控制策略的配置文件
- /etc/hosts. allow
- /etc/hosts.deny
2.2TCP Wrappers策略应用
2.2.1设置访问控制策略
- 策略格式
服务列表:客户机地址列表 - 服务程序列表
多个服务以逗号分隔,ALL表示所有服务 - 客户端地址列表
多个地址以逗号分隔,ALL表示所有服务
允许使用通配符*和?
网段地址,如192.168.1 或者 192.168.1.0/255.255.255.0
区域地址,如.benet.com
2.2.2策略的应用顺序
- 先检查hosts.allow,找到匹配则允许访问
- 再检查hosts.deny,找到则拒绝访问
- 若两个文件中均无匹配策略,则默认允许访问
2.2.3策略应用示例
- 仅允许从以下地址访问sshd服务
主机192.168.100.100
网段192.168.200.0/24 - 禁止其他所有地址访问受保护的服务
[root@csdn01 ~]# vim /etc/hosts.allow
sshd:192.168.100.100,192.168.200.*
[root@55 ~]# vim /etc/hosts.deny
sshd:ALL
优先读取allow,然后再读取deny
Linux--远程访问及控制(SSH+TCP Wrappers配置各种机制验证)相关推荐
- ssh远程访问及控制与TCP Wrappers
远程访问及控制 文章目录 远程访问及控制 SSH协议 客户端和服务端 OpenSSH 配置opensSH服务端 设置SSH白名单和黑名单 使用SSH客户端程序 1. ssh远程登录 2. scp远程复 ...
- Linux远程访问及控制(SSH、TCP Wrappers 访问控制)
Linux远程访问及控制 一.SSH远程管理 1.SSH定义 2.SSH数据传输优点 3.SSH客户端和服务端 二.OpenSSH 1.配置OpenSSH 服务端配置 2.scp远程复制 3.sftp ...
- 【鬼网络】之远程访问及控制ssh
远程访问及控制ssh 一.SSH远程管理 1.定义 2.优点 3.客户端与服务端 4.SSH服务的开启.端口号和配置文件 二.配置 OpenSSH 服务端 1.配置文件常用设置选项 2.AllowUs ...
- Linux 远程访问及控制
Linux 远程访问及控制 文章目录 Linux 远程访问及控制 引言: 一.SSH远程管理 1.SSH是什么: 2.SSH客户端与OpenSSH服务端 3.SSH服务配置 4.SSHD服务端的功能 ...
- 远程访问及控制——SSH远程管理及TCP Wrappers 访问控制
一.SSH远程管理 1.定义 SSH(Secure Shell )是一种安全通道协议,主要用来实现字符界面的远程的登录.远程复制等功能. SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录 ...
- Linux服务篇之远程访问及控制SSH
文章目录 1 SSH 1.1 SSH 概念 1.2 SSH 优点 2 SSH 远程管理 2.1 SSH 远程登录方式 2.2 故障集 2.3 OpenSSH 服务器 2.4 OpenSSH 服务包 3 ...
- 远程访问及控制SSH 服务
目录 前言 一.SSH概述 二. SSHD服务 2.1 远程登录 2.2 文件传输 三.SSH服务配置 3.1 SSH服务安全调优 3.2 SSH服务验证 四.密钥对构建 4.1 密钥对原理 4.2 ...
- Linux 远程访问及控制 OpenSSH 服务
文章目录 前言 1. SSH 远程管理 1.1 SSH 概述 1.2 OpenSSH 概述 1.3 配置 OpenSSH 服务端 1.4 SSH 客户端使用 (1) ssh 远程登录 (2) scp ...
- 远程访问及控制SSH
目录 SSH基础 什么是SSH SSH特点 SSH协议 SSH原理 用户登录 scp命令--远程安全复制 sftp--安全FTP 服务端配置 构建密钥对验证 密钥对验证实验 SSH基础 什么是SSH ...
最新文章
- c语言程序开发过程上机步骤,C语言程序上机步骤2010.doc
- mysql删除有外链索引数据,Cannot delete or update a parent row: a foreign key constraint fails 问题的解决办法
- 机器人码垛手持式编程_三分钟告诉你企业为什么要使用全自动码垛机械手!
- Android 基础—— 对Context的理解与使用技巧
- linux如何自动化部署脚本实现免密登录并访问资源
- python123m与n的数学运算_python小白进阶之路三——循环结构入门练习+Random库练习...
- 精选西门子PLC工程实例源码【共300套】
- 全国哀悼日 灰色CSS滤镜
- 进入旅游营销时代,携程有什么“大招”?
- 数据库查询时报错com.mysql.jdbc.exceptions.jdbc4.MySQLDataException: ‘1.7725000000E10‘ in column ‘17‘ is outs
- grub4dos 启动ubuntu 12.04
- 计算机专业相关的组名和口号,课堂小组霸气组名和口号大全
- 推荐几个不错的美术游戏资源
- 【密码学】 一篇文章讲透数字证书
- 原生爬取熊猫平台的数据
- 永中软件承接“核高基”专项
- 美丽乡村可行性研究报告
- 2345看图王2345Pic10.4.0.9254_x64官方净化版
- spring ioc di 原理解析
- 攻防世界 -- very_easy_sql
热门文章
- android6没有4g,手机没有4g信号是什么原因?手机没有4g信号解决方法介绍
- hibernate管理的对象
- facebook messenger 白名单域配置的坑
- java线程同步的实现方式
- ubuntu下搭建僵尸毁灭工程专用服务器
- Platypus 5.3 文档(手工翻译,见谅)
- matlab 绘制正方体,三维立体图(patch)
- 为什么有很多男生打游戏就可以很快乐?
- 更改计算机硬盘,教您win7硬盘盘符怎么更改
- 南开计算机要过英语四六级吗,南开大学2018年6月大学外语四、六级考试报名工作的通知...