Linux远程访问及控制(SSH)
1、ssh协议:用于远程登录,端口号:22/tcp
配置文件:
1)服务器端口:/etc/ssh/sshd_config
2)客户端 :/etc/ssh/ssh_config
2、服务器监听选项:
UseDNS no :禁用DNS反向解析
PermitRootLogin :允许Root登录
PermitEmyptPasswords:是否允许空密码
AllowUsers/DenyUsers: 允许/拒绝用户访问,不可同时使用,可用@制定允许远程主机
PasswordAuthentication: 启用密码验证
PubkeyAuthentication:启用密钥对验证,优先级高
AuthorizedKeysFile:公钥库文件位置及名称 .ssh/authorized_keys
3、验证方式:
1)密码验证:用/etc/passwd和/etc/shadow文件验证
2)密钥对验证:核对客户私钥与服务端公钥是否匹配
4、访问方式:
1)ssh命令: 远程登录
格式: ssh 用户名@主机ip
或 ssh -l 用户名 主机ip
2)scp命令:远程复制
格式: scp -r 用户名@服务器IP:/文件路径 /本地路径
scp 本地路径 用户名@服务器IP:/文件路径
3)sftp: 安全的ftp下载,无须vsftpd服务支持
sftp 用户名@主机IP
4)Xsheel: 在windows下远程登录服务器的软件
5、构建密钥对验证:
1)生成密钥对: 加密算法: 有RSA和DSA两种
命令:ssh-keygen -t rsa
生成密钥对文件:id_rsa.pub
生成私钥文件:id_rsa
2)将公钥文件上传到服务器并改名为:authorized_keys
Scp ~/.ssh/id_rsa.pub 用户名@服务IP:/~/.ssh/authorized_keys
或ssh-copy-id -i 公钥文件 用户IP
3)客户端会创建known_host文件记录已登录服务的摘要信息
6、TCP Wrappers:通过tcpd进程调用libwrap.so.*链接库进行控制
控制文件:
/etc/hosts.allow 允许访问文件
/etc/hosts.deny 拒绝访问控制文件
控制格式:服务列表:客户机地址列表
列表以逗号分隔 ALL代表所有
?代表一个字符 *代表任意个字符
地址可用IP地址、网段、域名
网段方式:192.168.4.
或192.168.4.*
或192.168.4.0/255.255.255.0
策略顺序:默认允许,允许优先
构建SSH服务体系示例
一、实验拓扑图:

二、实验要求:
1、网关的配置要求:
两个网卡,分别如图所示IP地址。开启路由转发功能:
echo "1" > /proc/sys/net/ipv4/ip_forward
以及需要停止 servieNetworkManager stop服务
三台linux主机配置完成后可以互相ping通,如下图:




Win7也可以ping通ssh服务器

2、SSH-web服务器的配置要求:
有两个用户,分别是zhangsan,lisi。要求zhangsan用户只能在1.10主机上使用密钥对的方式认证登录。lisi只能在1.20使用xshell登录,采用的直接密码验证的方式登录。禁用任何其他用户在客户端登录。在此服务器上安装一个lrzsz软件包(在linux的安装光盘上。),用于xshell能上传和下载软件。
步骤:
1)首先创建好zhangsan和lisi用户,并分别设置密码
2)配置sshd的主配置文件/etc/ssh/sshd_config ,设置zhangsan和lisi的登录主机

重启sshd服务

3)在1.10客户机上使用root身份创建密钥对文件并上传公钥到ssh服务器的zhangsan用户

查看确认生成的密钥文件

上传公钥

到ssh服务器上的zhangsan目录查看是否有.ssh隐藏目录,并且里面有authorized_keys文件。
4)在ssh服务器上安装lrzsz软件包

3、客户端要求:(验证)
1)1.10:使用zhagsan用户,验证密码短语后能够登录。

登录成功

2)验证使用lisi用户在1.10客户机上不能登录

3)1.20:安装Xshell ,使用lisi用户,验证lisi密码后能登录。




4)在xshell上传一个apache的安装包,并在2.10上安装Apache服务。
输入rz命令并选择软件包上传

到lisi的目录查看并安装

5)在lisi的目录创建一个文件验证是否能下载


6)在1.20 win7主机上验证zhangsan用户不能登录

7)验证其他用户在客户端不能登录


文章参考微信公众号:L宝宝聊IT
Linux远程访问及控制(SSH)的更多相关文章
- Linux远程访问及控制
Linux远程访问及控制 目录 Linux远程访问及控制 一.SSH远程管理 1. SSH远程管理概述 2. OpenSSH概述 3. 配置OpenSSH服务端 4. sshd服务的验证方式 5. 使 ...
- 公钥-私钥 白名单-黑名单 Linux 远程访问及控制(SSH)
远程访问及控制一.SSH远程管理二.OpenSSH服务器① SSH (Secure Shell)协议② OpenSSH三.配置OpenSSH服务器举例四.sshd 服务支持两种验证方式五.使用SSH客 ...
- Linux网络服务10——远程访问及控制
Linux网络服务10--远程访问及控制 一.SSH概述 1.SSH简介 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录.远程复制等功能.SSH协议对通信双方的数 ...
- SSH 远程访问及控制 ( 早上好,我是派大星,上帝派来爱你的那颗星)
远程访问及控制 1.SSH远程管理,TCP Wrappers访问控制 2.配置密钥对验证 1.SSH远程管理,TCP访问控制 SSH是一种安全通道协议,主要用来实现字符界面的远程登录.远程复制等功能: ...
- Linux iptables 应用控制访问SSH服务
Title:Linux iptables 应用控制访问SSH服务 --2012-02-23 17:51 今天用到了以前从来没有用到过的,iptables控制访问,只允许外部访问SSH服务(22号端口 ...
- 技术漫谈 | 远程访问和控制云端K8S服务器的方法
对于部署在云端的K8S容器编排系统,可以先通过SSH远程登录到K8S所在主机,然后运行kubectl命令工具来控制K8S服务系统.然而,先SSH登录才能远程访问的二阶段方式,对于使用Linux桌面或者 ...
- 了解一下 Linux 上用于的 SSH 图形界面工具
如果你碰巧喜欢好的图形界面工具,你肯定很乐于了解一些 Linux 上优秀的 SSH 图形界面工具.让我们来看看这三个工具,看看它们中的一个(或多个)是否完全符合你的需求. 在你担任 Linux 管理员 ...
- Linux启动与禁止SSH用户及IP的登录
以下就针对SSH方面讨论一下.假设有人特别关注Linux环境的安全性,第一就从login方面来进行讨论 1:Linux启动或禁止SSH root用户的登录 2:Linux限制SSH用户 事实上这些东西 ...
- Linux系统下的SSH 使用总结
对于linux运维工作者而言,使用ssh远程远程服务器是再熟悉不过的了!对于ssh的一些严格设置也关系到服务器的安全维护,今天在此,就本人工作中使用ssh的经验而言,做一些总结记录来下. -bash: ...
随机推荐
- Linux 常用命令 | mkdir/rmdir/touch 的使用
一.创建空目录 命令:mkdir 原意:make directories 所在路径: /bin/mkdir 1.创建空目录 2.递归创建空目录 选项:-p 如果直接使用mkdir 创建空目录: W ...
- 使用Sublime Text 2 和 MinGW 搭建C开发环境
使用工具 Sublime Text 2(Download) MinGW(Download)或者使用CygWin(Download)亦可 1.配置环境变量 下载和安装Sublime Text 2和Min ...
- Adam
Adam 方法 Adam 方法将惯性保持和环境感知这两个优点集于一身.一方面, Adam 记录梯度的一阶矩(first moment),即过往梯度与当前梯度的平均,这体现了惯性保持:另一方面,Adam ...
- MySQL 5.7最新版本的2个bug
好久没写博客了,都长草了.新业务上了5.7没遇到什么问题,虽然没遇到什么问题,但不代表没有问题,我有个习惯就是没事就喜欢逛逛percona的Blog,于是看到目前最新GA版本5.7.17的2个bug, ...
- ARM64 Linux kernel virtual address space
墙外通道:http://thinkiii.blogspot.com/2014/02/arm64-linux-kernel-virtual-address-space.html Now let's ta ...
- S5PV210 串口配置与实验(轮询方式)
S5PV210 UART 相关说明 通用异步收发器简称 UART, 即 UNIVERSAL ASYNCHRONOUS RECEIVER AND TRANSMITTER,它用来传输串行数据.发送数据时, ...
- 使用Django创建网站项目<二>
上一篇:Windows安装diango框架<一> 创建项目,启动服务器 利用安装好的django包的django-admin.py创建项目,命令 python django-admin. ...
- 过三关 Java冒泡排序选择排序插入排序小练习
材料:猴子排序,按照身高来从小到大来排序. 第一关: 老猴子带领小猴子队伍按大小逐一比较,交换,开始高矮排列队伍.(冒泡排序) 第二关: 太慢了,给第一关增加难度,进行选择排序 第三关: 最后,尝试选 ...
- char *s="string"和char s[]="string"的区别
char *s="string"的内容是不可以改的 void main() { char* pStr1 = "Hello!"; char pSt ...
- potplayer打开多个视频文件
选项-基本-多重处理方式-新开一个播放进程播放