配置OpenSSH/stelnet

其他远程连接工具:telent、realVNC、RSH、RCP等,SSH更加安全可靠

一、配置OpenSSH/stelnet

1.配置服务端

# vim /etc/ssh/sshd_config //修改ssh配置文件

Port 22 //监听端口

AddressFamily any //使用哪种地址簇,any包含v4、v6,inet表示IPv4,inet6表示IPv6

ListenAddress 1.1.1.1 //监听地址

Protocol 2 //ssh 协议号

LoginGraceTime 2m //登录验证时间2分钟,即提示输入密码界面保持时间。

PermitRootLogin yes //允许root用户登录

MaxAuthTries 3 //密码最大重试次数为3次

PermitEmptyPasswords no //禁止空密码用户登录

PasswordAuthentication yes //进行密码验证

PubkeyAuthentication yes //进行密钥对验证

AuthorizedKeysFile     .ssh/authorized_keys //进行密钥对验证需要指定公钥库数据文件

AllowUsers zhangsan  lisi@1.1.1.1 //只允许张三李四登录,而且李四只能够从1.1.1.1登录,root用户将不能登录

#DenyUsers zhangsan lisi //拒绝张三李四登录 //与上一条不能同时使用

AllowGroups abc //只允许组abc登录

DenyGroups abc //只拒绝abc组登录

2.ssh客户端使用方法

命令程序ssh、scp、sftp

# yum install -y openssh-clients //客户端安装ssh客户端

ssh远程登录:

#ssh zhangsan@192.168.1.151 //使用linux系统登录其他linux系统

#ssh -p 8080 zhangsan@192.168.1.151 //指定端口进行登录

scp远程复制:

使用以下命令进行复制远程服务器数据到本地,远程服务器也需要安装openssh-clients

#scp root@192.168.1.151:/etc/passwd /home/pwd.txt //将192.168.1.151上的passwd文件复制到本地取名为pwd.txt,指定端口跟-P

# scp -r root@192.168.1.151:/var /home/ //将151服务器上的目录/var 复制到本地home下  ,-r选项表示复制目录

使用以下命令将本地目录aaa复制到服务器的/mnt下:

# scp -r /home/aaa/ root@192.168.1.151:/mnt/

sftp上传下载文件:

# sftp root@192.168.1.151 //使用类似于ftp的交互式方式进行上传下载文件

Connecting to 192.168.1.151...

root@192.168.1.151's password':

sftp> ls //查看到的是远程服务器用户宿主目录的内容

sftp> put /home/pwd.txt //将本地pwd.txt上传到服务器的宿主目录中

sftp> put /home/pwd.txt /home/ //将本地pwd.txt上传到服务器的/home目录

sftp> get /home/pwd.txt //下载服务器/home/pwd.txt文件到本地"当前目录",指执行进入sftp连接服务器时所在的目录

sftp> get /home/pwd.txt /var //下载服务器/home/pwd.txt文件到本地/var目录

sftp> lcd /home //本地目录切换

sftp> cd /home //远程服务器目录切换

3.登录验证方式

ssh支持"密码登录"和"密钥对验证登录"两种方式:

密码验证:默认启用密码验证,使用系统密码进行验证

密钥对验证:要求提供相匹配的密钥信息才能够通过验证,安全性更高

Linux客户端使用密钥对验证案例:

客户机创建密钥

# ssh-keygen -t rsa 或者ecdsa等 //回车后第一个界面要求输入密钥存放路径,回车默认选择,第二次要求输入添加密码验证,可以直接回车跳过,

将客户机公钥发送至服务器,方法1:

# scp .ssh/id_rsa.pub root@192.168.1.151:/tmp

在服务器中导入公钥

# mkdir -p /home/lisi/.ssh

# cp /tmp/id_rsa.pub /home/lisi/.ssh/authorized_keys

# vim /etc/ssh/sshd_config

PubkeyAuthentication yes //进行密钥对验证

AuthorizedKeysFile     .ssh/authorized_keys //进行密钥对验证需要指定公钥库数据文件

# systemctl restart sshd

# ssh lisi@192.168.1.151 //如在创建密钥时设置有密码,那么回车后需要输入密码进行验证,否则直接登录进服务器

将客户机公钥发送至服务器,方法2:

# ssh-copy-id -i .ssh/id_rsa.pub wangwu@192.168.1.151 //直接将文件上传至服务器并进行添加到使用用户目录中

Windows 10客户端使用SecureCRT 7.3实现使用密钥对连接linux服务器

1.先使用root用户以密码验证方式远程连接至服务器

2.在客户端CRT终端中生成密钥对:

A.在CRT终端的菜单栏中点击”Options”--->”Global Options”--->”SSH2”

再点击以下红框中的按钮实现创建密钥对文件:

下一步后可以选择密钥算法类型,类型有以下图片中的三种,分别为:

RSA: 目前应用最普遍,也是最为经典的一个数字签名加密算法,但是签名长,
产生密钥很麻烦。

DSA: 用于签名,而 RSA 可用于签名和加密。

ECDSA:ECDSA算法是ECC+DSA的结合体,相较于RSA数字签名算法,速度快,强度高,签名短,前景乐观。

算法类型选择后可选输入对于密钥加密的密码:

在下图的第一、第二个框中输入相同的密码串,如:”123456”,则表示在以后使用密钥对登录服务器时还得同时输入该密码串,从而实现双重加密,更加安全。当然也可以让这两个框为空,则表示不需要再次输入密码,仅通过密钥对即可登录。

第三个框的内容记录了当前windows客户端登录用户及主机名。

输入密码串后接着下一步,选择算法长度,理论上来讲,值越高,算法强度越高,越安全:

点击下一步等待进度条读完后继续点击下一步进入最后步骤:

上图中,前两项分别选择为”标准密钥”和”基于openssh密钥”,区别在于选择第一项”标准密钥”的话,需要在服务器中通过:“ssh-keygen -i -f Identity.pub >> authorized_keys”将标准密钥转换为基于openssh的密钥才可使用。因此此处直接选择第二种”openssh key format”

接着就是该密钥对的存放位置,默认存放在当前系统登录用户家目录中的”文档”中。

当点击”完成”完成创建密钥对后即可在”文档”中查看到两个密钥对文件,如下图:

Identity文件自己使用,Identity.pub上传至服务器的某个用户家目录下,用于实现该用户在当前windows客户端中不用输入密码即可实现访问的功能。

3.服务器配置使用客户端的密钥对文件:

A.上传刚刚生成的密钥对.pub文件上传至服务器/home下,可通过共享,或者rz上传方式实现。

[root@db home]# pwd

/home

[root@db home]# ls

Identity.pub

B.创建用户,设置密码:

[root@db home]# useradd dashuaige

[root@db home]# echo "123456" | passwd --stdin dashuaige更改用户 dashuaige 的密码 。

passwd:所有的身份验证令牌已经成功更新。

C.将以上传到服务器/home下的windows客户端的公钥移动至用户的家目录中并改为默认名称:

[root@db home]# mkdir /home/dashuaige/.ssh

[root@db home]# mv Identity.pub /home/dashuaige/.ssh/authorized_keys

[root@db home]#

D.开启服务器基于密钥对验证功能:

[root@db home]# vim /etc/ssh/sshd_config

第一个红框表示为开启密钥对验证功能,将默认的#号删除即可

第二个红框表示密钥对验证的密钥文件位置,之前已经放在了普通用户家目录中的该位置。

重启sshd服务。

[root@db home]# systemctl restart sshd

E.客户端验证:

通过以下方式连接,可不需要用户密码即连接至服务器

由于之前在创建密钥对时为密钥对设置了密码串,因此此处需要输入密码串”123456”。

需要注意:通过以上设置,只有administrator用户才能够使用密钥对方式登录,而windows客户端其他用户需要重新配置秘钥对文件并设置服务器才能够使用密钥对方式登录。

且使用的服务器用户名为”dashuaige”,因为只有该用户的家目录中存在密钥对文件,如果希望通过服务器的其他用户名也使用密钥对方式登录的话,可以将”dashuaige”家目录中的密钥对文件复制到其他用户的家目录并重启sshd服务即可。

二、TCP_Wrappers  

TCP_Wrappers是一个工作在应用层的安全工具,它只能针对某些具体的应用或者服务起到一定的防护作用。

比如说ssh、telnet、FTP等服务的请求,都会先受到TCP_Wrappers的拦截。

工作原理:

TCP_Wrappers有一个TCP的守护进程叫作tcpd。以telnet为例,每当有telnet的连接请求时,tcpd即会截获请求,

先读取系统管理员所设置的访问控制文件,合乎要求,则会把这次连接原封不动的转给真正的telnet进程,由telnet完成后续工作;

如果这次连接发起的ip不符合访问控制文件中的设置,则会中断连接请求,拒绝提供telnet服务。

设置访问控制策略

策略格式:服务列表:客户机地址列表

服务列表 ——

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

客户机地址列表

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

允许使用通配符 ? 和 *

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

区域地址,如 .abc.com

注意:对于已经启用的程序,可能不会立即生效

策略的应用顺序

先检查hosts.allow,找到匹配则允许访问

否则再检查hosts.deny,找到则拒绝访问

若两个文件中均无匹配策略,则默认允许访问

配置文件格式写法:

sshd:192.168.1.0

sshd:192.168.1.

sshd:192.168.1.*

sshd,vtsftp:1.1.1.1

all:192.168.1.1

判断哪些程序可以使用该防火墙:

使用命令

# ldd /usr/sbin/sshd //在输出结果中出现了"libwrap"表示可以使用Wrappers防火墙

        linux-vdso.so.1 =>  (0x00007fffc01ff000)

        libfipscheck.so.1 => /lib64/libfipscheck.so.1 (0x00007fc2e519b000)

        libwrap.so.0 => /lib64/libwrap.so.0 (0x00007fc2e4f90000)

        libaudit.so.1 => /lib64/libaudit.so.1 (0x00007fc2e4d73000)

        libpam.so.0 => /lib64/libpam.so.0 (0x00007fc2e4b65000)

        libdl.so.2 => /lib64/libdl.so.2 (0x00007fc2e4961000)

        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fc2e4741000)

        libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007fc2e43a7000)

        libutil.so.1 => /lib64/libutil.so.1 (0x00007fc2e41a4000)

        libz.so.1 => /lib64/libz.so.1 (0x00007fc2e3f8d000)

.................

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/9794.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

目前市面上堡垒机厂家有哪些?会帮忙部署吗?

随着大家对于网络安全的重视,越来越多的企业准备采购堡垒机了。不少企业在问,目前市面上堡垒机厂家有哪些?会帮忙部署吗?这里我们小编就来简单为大家回答一下,仅供参考哈! 目前市面上堡垒机厂家有哪些&…

SAM轻量化应用Auto-SAM、Group-Mix SAM、RAP-SAM、STLM

1. Auto SAM(Auto-Prompting SAM for Mobile Friendly 3D Medical Image Segmentation) 1.1 面临问题 医学背景: (1)与自然图像相比,医学图像的尺寸更小,形状不规则,对比度更低。&…

接口测试用例设计思路(通俗易懂)

一、接口测试的流程: 需求分析(需求文档、开发提供接口文档)→测试设计→测试用例评审→测试执行→验收→预发布→上线 二、基本功能流程测试: 冒烟测试(主业务的正向流程)、正常流程覆盖测试(正常分支的业务流程进行覆盖→分支覆盖、路径覆盖、业务场…

零基础怎么快速进行单细胞分析?

近一段时间正在努力学习单细胞相关的理论知识,发现单细胞测序和普通的真核细胞的转录组非常相似。两者之间的最大的区别在于,一个测的是单个细胞的表达,一个测的是一堆细胞的表达之和。所以从这里就可以理解,为什么网上很多教程都…

【c++算法篇】双指针(下)

🔥个人主页:Quitecoder 🔥专栏:算法笔记仓 朋友们大家好啊,本篇文章我们来到算法的双指针的第二部分 目录 1.有效三角形的个数2.查找总价格为目标值的两个商品3.三数之和4.四数之和5.双指针常见场景总结 1.有效三角形…

解决 SyntaxError: Unexpected token ‘.‘ 报错问题

这个报错一般是编译问题&#xff0c;浏览器的版本过低没通过代码 解决办法&#xff1a; 在package.json文件中加上这个 "browserslist": ["> 1%","last 2 versions","not dead","not ie < 6","Android > 4&…

98、技巧-颜色分类

思路 这道题的思路是什么&#xff0c;首先典型荷兰国旗问题&#xff1a; 该问题的关键在于我们要将所有的0放到数组的前部&#xff0c;所有的1放在中间&#xff0c;所有的2放在后部。这可以通过使用两个指针&#xff0c;一个指向数组开头的“0”的最后一个位置&#xff0c;另…

如何确保UDP文件传输工具有最低稳定的传输速度?

在当前日新月异的数字时代背景下&#xff0c;文件传输工具已经成为我们日常生活与工作中不可或缺的一部分&#xff0c;尤其针对那些频繁涉及即时数据交互与多媒体流通的场景。 UDP协议&#xff0c;以其突出的高速传输与低延迟特性&#xff0c;脱颖而出成为众多用户的首选。不过…

Python管理PVE(Proxmox VE)云平台--节点资源统计

一、前言 写本脚本的初衷是因手动查看统计已分配的PVE资源过于耗时&#xff0c;因此写一个脚本一劳永逸&#xff0c;具体实现方法&#xff1a;利用Python的paramiko模块进行远程命令查看、统计PVE平台各节点已分配的cpu、内存、磁盘空间。 二、步骤 1.构建shell脚本 1.1 统计…

Ubuntu系统下编译OpenCV4.8源码

OpenCV4.8源码编译与安装 其实很简单&#xff0c;只要三步即可搞定&#xff0c;第一步是下载指定版本的源码包&#xff1b;第二步是安装OpenCV4.8编译需要的编译器与第三方库支持&#xff1b;第三步就是编译OpenCV源码包生成安装文件并安装。 01下载OpenCV4.8源码包 在Ubunt…

解锁楼宇自动化新维度西门子Insight+BACnet IP I/O控制器

数字城市的楼宇自动化已不再是一个遥不可及的概念&#xff0c;而是成为了现代建筑的标配。特别是在大型商业综合体、高端写字楼和公共设施中&#xff0c;高效的楼宇管理系统是确保环境舒适度与能源效率的关键。当提及楼宇自动化领域的佼佼者&#xff0c;西门子Insight楼宇自动化…

KMeans,KNN,Mean-shift算法的学习

1.KMeans算法是什么&#xff1f; 在没有标准标签的情况下&#xff0c;以空间的k个节点为中心进行聚类&#xff0c;对最靠近他们的对象进行归类。 2.KMeans公式&#xff1a; 2. 1.关键分为三个部分&#xff1a; 1.一开始会定义n个中心点&#xff0c;然后计算各数据点与中心点…

jenkins使用gitLab(极狐)认证登陆

jenkins安装 GitLab Authentication插件 我因为java版本和最新GitLab Authentication 1.19版本不兼容&#xff0c;选择了本地安装 找个历史版本1.13版本&#xff0c;然后下载到电脑上 - 本地上传插件并安装 在极狐上创建一个应用 - 配置应用信息 应用名&#xff1a;jenkinsLo…

你以为是个黄金程序员,结果是个王者

玩过王者荣耀的同学都知道&#xff0c;从青铜到王者&#xff0c;过程中需要步步修炼&#xff0c;可以说等级的提升是胜利的积累&#xff0c;也可以说是技术的提升。 而程序员行业也是这样&#xff0c;技术越高段位越高&#xff0c;当然段位越高技术也越高&#xff0c;这个行业大…

Oracle -在线回缩表

conn scott/tiger DROP TABLE EMP1 PURGE; CREATE TABLE EMP1 AS SELECT * FROM EMP; alter table emp1 enable row movement; -- 启动回缩特性 insert into emp1 select * from emp1; / / commit; -- 增加到14000行 -- 分析表的结构 analyze table emp1 comput…

小程序如何确定会员身份并批量设置会员积分或余额

因为一些原因&#xff0c;商家需要从其它系统里面批量导入会员&#xff0c;确定会员身份&#xff0c;然后给他们设置对应的账户余额。下面&#xff0c;就具体介绍如何进行这种操作。 一、客户进入小程序并绑定手机号 进入小程序&#xff1a;客户打开小程序&#xff0c;系统会自…

交友软件源码-源码+搭建+售后,上线即可运营聊天交友源码 专业语聊交友app开发+源码搭建-快速上线

交友小程序源码是一种可以帮助开发者快速搭建交友类小程序的代码模板。它通常包括用户注册、登录、个人信息编辑、匹配推荐、好友聊天等常见功能&#xff0c;以及与后台数据交互的接口。使用这种源码可以极大地缩短开发时间&#xff0c;同时也可以根据自己的需求进行二次开发和…

从0到1开发一个vue3+ts项目(一)

1. 环境配置 1.1 安装node 使用官方安装程序 前往 Node.js 官网&#xff1a;访问 Node.js 官网&#xff0c;下载适合你操作系统的安装程序。运行安装程序&#xff1a;下载完成后&#xff0c;双击安装程序并按照提示进行安装。验证安装&#xff1a;安装完成后&#xff0c;在终…

C++对象的拷贝构造函数

如果一个构造函数的第一个参数是类本身的引用,且没有其它参数(或者其它的参数都有默认值),则该构造函数为拷贝构造函数。 拷贝(复制)构造函数:利用同类对象构造一个新的对象 ●1.函数名和类同名 (构造函数) ●2.没有返回值 (构造函数) ●3.第一个参数必…

软考中级-软件设计师(九)数据库技术基础 考点最精简

一、基本概念 1.1数据库与数据库系统 数据&#xff1a;是数据库中存储的基本对象&#xff0c;是描述事物的符号记录 数据库&#xff08;DataBase&#xff0c;DB&#xff09;&#xff1a;是长期存储在计算机内、有组织、可共享的大量数据集合 数据库系统&#xff08;DataBas…