加密需要
不加密流量的易受攻击性
密码/ 数据嗅探
数据操作
验证操作
相当于邮寄明信片
不安全的传统协议
telnet 、FTP 、POP3 等等,不安全密码
http 、smtp 、NFS 等等,不安全信息
Ldap 、NIS 、rsh 等等,不安全验证
墨菲定律
一种心理学效应,是由爱德华· 墨菲(Edward A.Murphy)提出的.
原话:如果有两种或两种以上的方式去做某件事情,而其中一种选择方式将导致灾难,则必定有人会做出这种选择
主要内容:
任何事都没有表面看起来那么简单
所有的事都会比你预计的时间长
会出错的事总会出错
如果你担心某种情况发生,那么它就更有可能发生
安全机制
NIST( 美国国家标准与技术研究院)定义的安全属性:
保密性 :
数据保密性
隐私性
完整性:不可篡改
数据完整性
系统完整性
可用性
安全攻击:
STRIDE
Spoofing (假冒)、Tampering (篡改)、Repudiation (否认)、Information Disclosure (信息泄漏)、Denial ofService和 (拒绝服务)和 Elevation of Privilege (提升权限 )
安全机制有
加密、数字签名、访问控制、数据完整性、认证交换、流量填充、路由控制、公证
安全服务:
认证
访问控制
数据保密性
连接保密性
无连接保密性
选择域保密性
流量保密性
数据完整性
不可否认性
安全算法
常用安全技术
认证
授权
安全通信
审计
密码算法和协议:
对称加密
公钥加密
单向加密
认证协议
Linux 系统常见的加密工具:
OpenSSL(ssl协议开源形式)
gpg(pgp 协议的实现)
OpenSSL
是个开源项目
三个组件:
openssl: 多用途的命令行工具,包openssl
libcrypto: 加密算法库,包openssl-libs
libssl :加密模块应用库,实现了ssl及tls,包nss
openssl 命令:
两种运行模式:交互模式和批处理模式
openssl version :程序版本号
命令:标准命令、消息摘要命令、加密命令
标准命令:enc, ca, req, …
SSH
ssh: secure shell, protocol, 22/tcp, 安全的远程登录
具体的软件实现:
OpenSSH: ssh协议的开源实现,CentOS 默认安装
dropbear:另一个开源实现
SSH 协议版本
v1: 基于CRC-32做MAC,不安全;man-in-middle
v2:双方主机协议选择安全的MAC方式
基于DH算法做密钥交换,基于RSA或DSA实现身份认证
两种方式的用户登录认证:
基于password
基于key