linux 加密和证书

安全目标:
机密性:明文传输的ftp, http,telnet 不安全
数据完整性:
身份验证:
可用性:
安全技术:认证,授权,安全通信,审计
密码算法和协议:对称加密,公钥加密,单向加密,认证协议

1、对称加密:加密,解密使用同一个秘钥,效率高

DES:Data Encrption Standard, 56bit
3DES:
AES:Advanced
Blowfish
缺点:秘钥过多,分发问题,来源无法确认
gpg实现加密: gpg -c file –>file.gpg
解密:gpg -o file -d file.gpg

2、公钥加密:非对称加密

密钥对:公钥:P 私钥:S 信息:M
M=S(P(M))
发送方用自己的私钥加密数据,可以实现身份验正
发送方用对方的公钥加密数据,可以保证数据机密性
公钥加密算法很少用来加密数据:速度太慢
公钥加密:(加密/签名)
数字签名
数据加密
对称密钥交换
算法:RSA: 加密、签名,DSA:签名,ElGamal
gpg实现公钥加密:
gpg –gen-key

3、单向加密:提取数据特征码

输入一样:输出必然相同
雪崩效应:输入的微小改变,将会引起结果的巨大改变
定长输出:无论原始数据是多在,结果大小都是相同的
不可逆:无法根据特征码还原原来的数据
协商生成密码:密钥交换(Internet Key Exchange, IKE)
Diffie-Hellman协议:
A –> B p, g (大素数,生成数)
A: x B: y
A: g^x%p –> B
B: g^y%p –> A
g, p, g^x%p, g^y%p
A: (g^y%p)^x=g^yx%p
B: (g^x%p)^y=g^xy%p
单向加密算法:MD5 SHA1 SHA256

4、CA

PKI: Public Key Infrastructure
签证机构CA: Certificate Authority
注册机构:RA
证书吊销列表:CRL
x509:
公钥及期有效期限
证书的合法拥有者
证书该如何被使用
CA的信息
CA签名的校验码..

5、OpenSSL: 开源

libcrypto: 加密库
libssl: TLS/SSL的实现
基于会话的、实现了身份认证、数据机密性和会话完整性的TLS/SSL库、
openssl: 多用途命令行工具
6、openssl实现私有CA:
1、生成一对密钥
2、生成自签署证书
openssl genrsa -out /PATH/TO/KEYFILENAME NUMBITS
openssl rsa -in /PATH/TO/KEYFILENAME -pubout

CA服务器:
1、vim /etc/pki/tls/openssl.cnf
dir=/etc/pki/CA

2、cd /etc/pki/CA
make certs newcerts crl
touch index.txt
echo 01 > serial

3、自签证书
(umask 077; openssl genrsa -out private/cakey.pem 2048)
openssl req -x509 -new -key private/cakey.pem -out cacert.pem -days 3000

OpenSSL:
1、创建CA
自己生成一对密钥;
生成自签证书;
2、客户端
生成一对密钥;
生成证书颁发请求, .csr;
将请求发给CA;
3、CA端
签署此证书;
传送给客户端;
OpenSSL: TLS/SSL, (libcryto, libssl, openssl)

9、OpenSSH:
telnet, TCP/23, 远程登录
认证明文
数据传输明文

ssh: Secure SHell, TCP/22 C/S
OpenSSH软件包(开源)
客户端:Linux: ssh
Windows: SecureCRT xshell
服务器端:sshd
openssh (ssh, sshd)
sshd: 主机密钥
netstat
-t: tcp connections
-u: udp connections
-l: listening
-p: process
配置文件:
ssh (ssh_config)
sshd (sshd_config)
/etc/ssh
ssh:
ssh -l USERNAME REMOTE_HOST [‘command’]
ssh USERNAME@REMOTE_HOST
-p port

基于密钥的认证:
一台主机为客户端(基于某个用户实现):
1、生成一对密钥
ssh-keygen
-t {rsa|dsa}
-f /path/to/keyfile
-N ‘password’
2、将公钥传输至服务器端某用户的家目录下的.ssh/authorized_keys文件中
使用文件传输工具传输(ssh-copy-id, scp)
ssh-copy-id -i /path/to/pubkey USERNAME@REMOTE_HOST

总结:
1、密码应该经常换且足够复杂;
2、使用非默认端口;
3、限制登录客户地址;
4、禁止管理直接登录;
5、仅允许有限制用户登录;
6、使用基于密钥的认证;
7、禁止使用版本1

PKI
A –> B:
证书: 用户信息,公钥
颁发者的信息,签名
证书有效期限
A发送方:
1、计算数据的特征码(单向加密);
2、用自己的私钥加密特征码,并附加在数据后面;
3、生成一个临时对称密钥;
4、用此密钥结合某算法加密数据及加密后的特征码;
5、对接收方的公钥加密此对称密钥,并附加加密后的数据后面;
6、发送至接收方;
B接收方:
1、用自己的私钥解密加密的对称密钥;
2、用对称密钥解密数据;
3、用对方的公钥解密加密的特征码;
4、用同样的算法计算数据的特征码,并与解密而来的特征码进行比较;
A –> B:
SSL: Secure Socket Layer, SSLv2, SSLv3
TLS:Transport Layer Security, TLSv1

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/86882

(1)
cuicui
上一篇 2017-09-11 01:00
下一篇 2017-09-11 09:56

相关推荐

  • 硬链接和软链接的区别

    硬链接和软链接的区别 1、概念 在linux中,链接可分为两种:一种为硬链接,另一种为软链接。硬链接:ln 源文件 目标文件软链接:ln -s(soft)源文件 目标文件 硬链接 硬链接是指通过索引节点inode来进行链接。linux系统中每个文件对应一个inode,并且允许多个文件名指向用一个inode。这种情况的文件就成为硬链接。它的作用之一就是允许一个…

    Linux干货 2017-07-23
  • shell练习

    1 、编写脚本/root/bin/systeminfo.sh, 显示当前主机系统信息, 包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型 号,内存大小,硬盘大小。 运行后结果是: 2 、编写脚本/root/bin/backup.sh ,可实现每日将/etc/ 目录备 份到/root/etcYYYY-mm-dd中 运行结果是: 3 、编写脚本/r…

    Linux干货 2016-08-15
  • N26-第十一周

    1、详细描述一次加密通讯的过程,结合图示最佳。     发送方:1、使用单项加密算法计算数据文件的特征码2、使用发送方私钥加密特征码3、使用对称加密算法生成一对临时密钥4、使用临时密钥加密数据文件和加密后的特征码5、使用接收方的公钥加密使用临时密钥加密后的数据和特征码和临时密钥的解密密码,并将之发送给接收方 接收方1、使用接收方的私钥解密…

    2017-04-09
  • 在CentOS5,6上破解和加密口令

    在CentOS5,6上:    破解和加密口令:     破解口令方法一: 破解口令方法二:    重启虚拟机进入救援模式: 备注:生产中不用虚拟机时不要挂载光盘;防止光盘引导破解密码 加密口令: 编辑配置文件: /etc/grub.conf

    2017-05-16
  • Linux 文 本 处 理 工 具

    Linux 文 本 处 理 工 具 一.学习大纲: ◎各种文本工具来查看、分析、统计文本文件 文件内容查看工具:cat, tac,rev,more,less 文件截取:head和tail 按列抽取:cut,paste 分析文本的工具:wc , sort , uniq,diff和patch 命令使用练习题 ◎文本过滤与处理工具: grep与正则表达式…

    Linux干货 2016-08-05
  • 堡垒机-麒麟堡垒机动态口令使用手册

      一.管理员部分 1.在其它-licenses菜单查看动态口令许可是否打开,如果未打开联系厂商重新生成许可   2.找厂商生成密钥文件,密钥文件中包含令牌种子,在其它–动态令牌菜单将密钥文件导入即可看到所有的令牌种子,每个令牌可以绑定给多个用户     3.令牌绑定可以在 资源管理–…

    安全运维 2016-05-29

评论列表(1条)

  • h
    h 2017-09-13 11:14

    内容不错,注意排版,继续加油!