生成随机数设备:
/dev/random
/dev/urandom 可生成尾随机数,不安全
熵池
opnessl rand 67 在67的基础上生成随机数
opnessl -base64 rand 67 把随机数转换成字符
单向加密算法:
md5
sha1
sha1sum
md5sum
openssl,gpg
rpm -V
对称加密:
DES,3EDS,AES,blowfish
非对称(公钥)加密算法:
RSA,EIGamal
密钥分发:
cipher data, symetric key, P
ike: Internet Key Exchange
A:x gx mod p -->B
B:y gy mod p -->A
数字签名
密钥、证书:
Generate Pub_key/Sect_key pair
Generate Signature Request against Pub_key
Send it to CA
CA sign the CSR to generate Certificate
Receive the Certificate
CA:证书颁发结构
证书吊销列表
operssl:
生成私钥:openssl genrsa 1024 > /root/httpd.key
从私钥中导出公钥:openssl rsa -in /root/httpd.key -pubout -out /root/httpd.pub
生成证书颁发申请:openssl req -new -key /root/httpd.key -out /root/httpd.csr
查看证书内容:openssl req -noout -in /root/httpd.csr -text
签证书:openssl ca -in httpd.csr -out httpd.crt
openssl主配置文件:
/etc/pki/tls/openssl.cnf
dir /etc/pki/CA
创建CA:
cd /etc/pki/CA/ 放证书,及私钥
cd /etc/pki/tls
openssl.cnf 配置文件
[ CA_default ]
dir =/etc/pki/CA
cd /etc/pki/CA/
openssl genrsa 1024 > private/cakey.pem 生成密钥对
openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3655 自己给自己发证
mkdir certs newcerts crl
touch index.txt serial
echo 01 > serial
.pem测试证书后缀
吊销证书:openssl ca -revoke 01.crt
openssl ca -gencrl -out my.crl 更新吊销列表
SSL: security socket layer,v2,v3
TLS: transport layer security
OpenSSH
ssh: Security SHell, sshv1, sshv2
客户端必备
字符:
openssh: scp, ssh-keygen
openssh-clients: ssh, slogin, ssh-agent, sftp
图形:
openssh-askpass
openssh-askpass-gnome
提供服务器组件:openssh-server
stuneling 转发隧道
X-forwarding 本地实现转发图形界面请求
Authentication:
password
RSA/DSA 密钥的认证
kerberos, token
设置直接登录系统:
ssh-keygen -t rsa -->生成密钥
cd /root/.ssh/
ssh-copy-id -i /root/.ssh/id_rsa root@IP -->拷贝公钥
ssh root@IP
sshd: 脚本 /etc/init.d/sshd
/etc/ssh/ssh_config 客户端
/etc/ssh/sshd_config 服务器端
service sshd start/stop/status/restart
vim /etc/motd -->登录系统后提示信息
ssh -X 开户远程图形界面
SELinux:
Security Enhanced Linux
DAC: Discretionary Acess Control 自主访问控制策略
MAC: Mandatory Acess Control 强制访问控制策略
Subject, etc_t operation object, etc_t
SELinux Policy 策略
rule
sandbox 沙箱
访问规则:
/etc/selinux/targeted/policy/policy.21二进制文件
SELinux 定义级别
strict严格
targeted
getenforce 查看selinux状态
setenforce 0 临时调整selinux 模式-->permissive可以访问但要被记录,区别于1(不能访问)
vim /etc/sysconfig/selinux 永久调整
ps (aux)Z 查看标签
chcon 修改标签
-t 类型
chcon -t etc_t fstab
--reference 以其它为标准
chcon --reference=fstab httpd.crt
restorecon fstab 恢复文件默认标签
getsebool命令:
获取本机selinux策略值,也称为bool值。
getsebool -a | grep ssh 查看bool值
setsebool allo_ssh_keysign 0 修改bool值
setsebool -P allo_ssh_keysign 0 永久修改bool值