SSH与TCP Wrapper 学习笔记

简介:
SSH(Secure Shell) 实现了与telent服务类似的远程登录功能,ssh协议在网络中使用密文传输数据,SSH服务器中还支持使用scp和sftp等客户端程序进行远程主机的文件复制

SSH协议提供两种用户认证方式:
基于口令的安全认证
    与telnet类似,提供正确的用户口令后可以远程登录服务器
基于密钥的安全认证
    使用公钥和私钥对的方式对用户进行认证



对称密钥:服务器和客户端使用同样的密钥加密解密
 加密和解密的速度很快。


非对称密钥:
一般用于身份验证,安全性高,但加密解密速度慢
1.双方交换公钥
2.随机生成对称密钥,然后用对方的公钥加密后发给对方
3,对方用私钥解密得到对称密钥
4,以后对方所传输的所有数据均使用这个对称密钥加密和解密


openssh 是ssh协议的免费实现版本。他的进程是sshd。配置文件放在/etc/ssh中,服务器配置文件是/etc/ssh/ssd_config 客户机配置文件是/etc/ssh/ssh_config 

客户机登录ssh服务器后,会在客户机的家目录生成.ssh目录,其中know_hosts保存服务器的公钥。
在ssh客户端生成用户的公钥和私钥对
使用ssh-keygen命令生成密钥对:$ssh-keygen -t rsa(rsa是著名的非对称密钥算法)
公钥和私钥文件
ssh-keygen命令将在.ssh目录中生成公钥和私钥文件
id_rsa是私钥文件,内容需要保密
id_rsa.pub是公钥文件,可以发布到ssh服务器中。

复制公钥文件:
将客户端中的用户公钥文件复制到ssh服务器中([staid@staid ~]$ scp /home/staid/.ssh/id_rsa.pub root@192.168.0.2:/root):
将公钥内容追加到authorized_keys文件(没有authorized_keys的话,创建authorized_keys文件):
authorized_keys文件保存在ssh服务器中用户目录的.ssh子目录中
authorized_keys用于保存所有允许以当前用户身份登录的ssh客户端用户的公钥内容
使用>>重定向符将用户公钥追加到authorized_keys文件中
cat id_rsa.pub>>~/.ssh/authorized_keys

ssh 192.168.1.2 的意思是用当前用户的名字登录服务器。

TCP Wrappers(包裹起来):只要应用基于tcp协议的,用户访问tcp应用的话,先经过TCP Wrappers过滤一遍。
设置只有两个文件:/etc/hosts.deny 和/etc/hosts.allow
守护进程就是tcpd,
包:tcp_wrappers
此处白名单优先于黑名单,就是说白名单也有,黑名单也有,那么就是白名单生效

文件格式:<服务程序列表>:<客户端地址列表>[:动作]
文件中每行为一个设置记录
服务程序列表字段的表示:
ALL代表所有的服务程序
单个服务的名称 ,例如:in.telnetd代表telnet服务器进程(因为他属于超级管理程序的后台服务器部分,所以得用in.的样子,而不是独立进程),vsftpd代表vsftpd服务器程序
多个服务程序名称可以组成列表,中间用逗号隔开。例如:in.telnetd,vsftpd

客户机地址列表:字段的表示:
ALL代表所有的客户机地址
LOCAL代表本机地址
KNOW代表可解析的域名
UNKNOW代表不可解析的域名
以句点.可是的域名代表该域名下的所有主机,例如:.test.com代表test.com域下的所有主机
对某个子网中的所有主机使用 子网/掩码 的形式表示
对于网络中的某个主机可直接用ip地址表示

动作用allow代表允许,deny是拒绝。


本文转自guoli0813 51CTO博客,原文链接:http://blog.51cto.com/guoli0813/359680,如需转载请自行联系原作者

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
网络协议 物联网 开发者
NB-IoT 通信之 TCP 收发数据 | 学习笔记
快速学习 NB-IoT 通信之 TCP 收发数据
790 0
NB-IoT 通信之 TCP 收发数据 | 学习笔记
|
8月前
|
网络协议 Ubuntu Linux
为公网SSH远程Ubuntu配置固定的公网TCP端口地址主图
为公网SSH远程Ubuntu配置固定的公网TCP端口地址主图
84 0
|
网络协议 搜索推荐 Linux
SUSE12 SP5系统使用TCP Wrappers实现限制SSH访问控制
SUSE12 SP5系统使用TCP Wrappers实现限制SSH访问控制
272 0
SUSE12 SP5系统使用TCP Wrappers实现限制SSH访问控制
|
网络协议 Java 物联网
Wifi-nodeMCU-esp8266tcp 服务器创建并通过 tcp 调试助手远程控制 LED | 学习笔记
快速学习 Wifi-nodeMCU-esp8266tcp 服务器创建并通过 tcp 调试助手远程控制 LED
478 0
Wifi-nodeMCU-esp8266tcp 服务器创建并通过 tcp 调试助手远程控制 LED | 学习笔记
|
网络协议 物联网 UED
Wifi-nodeMCU-esp8266 TCP 服务器远程控制家里的灯 | 学习笔记
快速学习 Wifi-nodeMCU-esp8266 TCP 服务器远程控制家里的灯
210 0
Wifi-nodeMCU-esp8266 TCP 服务器远程控制家里的灯 | 学习笔记
|
XML JSON NoSQL
SSH|学习笔记
快速学习SSH
149 0
SSH|学习笔记
|
缓存 网络安全 开发工具
Github远程仓库的使用_SSH协议|学习笔记
快速学习Github远程仓库的使用_SSH协议
79 0
Github远程仓库的使用_SSH协议|学习笔记
|
安全 网络协议 Linux
SSH 服务器端安全设置|学习笔记
快速学习 SSH 服务器端安全设置
83 0
SSH 服务器端安全设置|学习笔记
|
安全 Shell Linux
SSH 密码暴力破解及防御实战_3 | 学习笔记
快速学习 SSH密码暴力破解及防御实战_3
229 0
SSH 密码暴力破解及防御实战_3 | 学习笔记
|
网络协议
网络通信学习笔记(三)---TCP通信及文件上传
网络通信学习笔记(三)---TCP通信及文件上传
网络通信学习笔记(三)---TCP通信及文件上传