网络安全基础知识和ssh

加密基础

  • NISI定义的数据安全
    • 保密性:数据保密性,隐私性
    • 完整性:数据完整性,系统完整性
    • 可用性:能正常获取其中信息
  • 安全攻击
    • 被动攻击:窃听
    • 主动攻击:伪装(利用telnet伪装身份发邮件,利用dig查找邮件服务器),重放,消息篡改,拒绝服务
  • 安全机制
    • 加密,数据签字,访问控制,数据完整性,认证交换,流量填充,路由控制,公正
  • 安全服务
    • 认证;访问控制;数据完整性,不可否认性
    • 数据保密性:连接保密性;无连接保密性;选择域保密性;流量保密性
  • 不安全网络协议
    网络安全基础知识和ssh
  • 密码算法和协议
    • 对称加密;公匙加密;单向加密;认证协议
      • DES已经被破解;3DES;Blowfish;Rc6;IDE6收费;常用AES
      • 特性 1加密解密使用同一个密匙。2 将原始数据分割成固定大小块
      • 缺陷:1密匙过多,2密匙分发
      • gpg -c 加密 -d 解密 -o生成文件
    • 公匙加密: 密匙成对出现,公匙加密只能私匙解反之亦然
      • 公匙公开给所有人pubkey
      • 私匙自己留存,secret key
      • 功能:
        • 数子签名,主要用于接收方确认发送方身份 CA数子证书
        • 密匙交换,发送方用对方公匙加密一个对称密匙发给对方
        • 数据加密(太长没人来用,只用来公匙加密)
      • 算法:
        • RSA,DSA只能用于认证。ELGamal商业
    • 单向加密:只能加密,不能解,提取数据指纹
      • 特性:输出定长,雪崩效应
      • 算法:md5 sha1 。。。。。
      • 功能:完整性
    • 数据传递过程加密
      • 先用单向加密提取特征码,用自己私钥加密特征码;附加数据后面,再利用对称秘钥进行加密,利用秘钥要换使对方获知秘钥,利用对方公匙加密对称秘钥
    • 密钥交换 IKE
      • 公匙加密 利用算法DH
      • 双方同时对已知的一个数进行运算,然后彼此交换后再次运算
    • PKI:public key infrastructure
      • 签证机构:CA 注册机构:RA 证书结构:CRL 证书库取库
      • X.509:定义证书结构及标准
        • 版本号;序列号;签名算法ID;发行者名称;有效期限;主体名称;主体秘钥;发行者唯一标识;主体唯一标识;扩展;发行者签名
  • SSL
    • ssl/tls 基于ip地址来实现
      • 在tcp/ip应用层和传输层之间加的半层;如果不适用就是HTTP传输文本;使用就是HTTPS传输二进制
      • 分层:1基础算法原语的实现;2各种算法的实现;3:组合算法的半成品 4 成品软件
      • ssl的连接过程
        网络安全基础知识和ssh
      • openssl :开元项目
        • 三个组件:openssl多用途命令工具 libcryto公共加密库 libssl库实现ssl及tls
        • 单向加密 dgst 哈希
          • openss dgst -md5 filename
          • 生成用户密码
            • openssl passwd -1 -salt 【SALT】
          • 生成随机数
            • openssl rand -base64 -hex num num标识字节,-hex每个字符4位
          • 生产密匙dui
            • openssl genrsa -out filename num(2048)
            • 提取公匙
              • openssl rsa -in filename -pubout
        • 随机数生成器
          • 记录键盘敲击和磁盘io读写中断来存入熵池
          • /dev/random 仅从熵池返回随机数,随机数用尽,堵塞
          • /dev/urandom 从熵池返回随机数,用尽后用软件模拟
    • 证书申请流程
      • 生成申请请求;RA核验,CA签发;证书获取
    • 建立私有CA
      • 配置openssl的文件:/etc/pki/tls/openssl.cnf
      • 1 :创建CA所需要的文件 在/etc/pki/CA下创建
        网络安全基础知识和ssh
        • touch index.txt echo 01 >serial 输入初始证书编号
        • 注意index.txt必须为空否则会报错
          网络安全基础知识和ssh
      • 2:CA自签证
        • 配置规定的CA密匙和证书存放位置
          网络安全基础知识和ssh
          网络安全基础知识和ssh
          • 生成密匙 (umask 077;openssl genrsa -out private/cakey.pem 2048 )
        • openssl req -new -x509 -key private/cakey.pem -days 7300 -out cacert.pem
          • -new新证书请求 -x509专用ca生成自签证书 -key生成请求的私钥文件 -days n证书期限 -out证书路径
      • 3:需要生成证书的机器发出请求
        • 先生成对称密匙;利用密匙生成证书请求格式为.csr后缀;发送给ca服务器
          • openssl req -new -key httpd.key   >httpd.csr
        • 注意请求;国家和省,公司的名字要一致;其他随意
          网络安全基础知识和ssh
      • 4:ca盖章
        • 使用ca服务器盖章后发还给请球者,将生成的证书放在certs文件夹里
        • openssl ca -in /tmp/httpd.csr -out certs/httpd.crt -days 365 证书放在/etc/pki/CA/certs/
        • 签证后文件生成.crt后缀文件;https只用到密匙和证书
    • 查看证书信息
      • openssl x509 -in certs/httpd.crt  -noout -text|-subject|-serial
    • 吊销证书
      • openssl ca -revoke certs/httpd.crt 
      • 生成吊销编号(第一次) echo 01 >/etc/pki/CA/crlnumber
      • openssl ca -gencrl -out crl.pem 发布到吊销数据库
  • openSSH
    • ssh安全的远程登录,22/TCP
    • OpenSSH :ssh的开源实现;dropbear:另一个开源实现
    • telnet 23/TCP 不安全连接
      • 安装telnet server
        • 启动服务 chkconfig telnet on
          • service xinnetd restart xinnetd是个超级守护进程用来通知服务开启服务
    • ssh协议版本
      • v1基于CRC-32的MAC;不安全
      • v2双方主机协议选择安全的MAC方式,使用DH算法密匙交换,基于RSA或DSA实现身份验证
        • 两种用户登录认证 基于password 基于key
        • 注意 连接主机发生变化时或其他主机冒充时会连接失败(首次连接会获取公匙存在家目录下的.ssh/known_hosts)
    • 配置文件
      • 客户端配置文件 ssh /etc/ssh/ssh_config
      • 服务器端 sshd /etc/ssh/sshd_config
      • 常用参数
        • prot listenaddress监听ip
        • 限制用户登录 AllowUsers use1 use2 AllowGroups
      • ssh命令
        • -v调试模式显示连接细节 -X支持显示图形 -t
      • ssh服务安全
        • 不要使用默认端口;禁止protocol version 1 ;限制可登录用户 ;设置空闲会话时长
        • 利用防火墙设置ssh访问策略; 监听特定ip ;使用基于密匙认证
        • 禁止空密码登录;禁止root直接登录 ;限制ssh访问频率和并发;做好日志分析
      • 日志文件 /var/log/secure
    • 生成认证秘钥用于自动登录
      • 主机间
        • 生成秘钥对 ssh-keygen -t rsa -p ”“ -f /home/wang/.ssh/id-rsa -p对秘钥加密 -f指定文件路径 注意P是大写 .ssh文件必须存在
        • 传输公钥 ssh-copy-id -i ./ssh/id_rsa.pub root@172.16.100.9
      • xshall利用密匙登录
        • 生成密匙复制到 .ssh/authorized_keys
      • scp sftp
        • -r递归复制 -q静默模式
        • scp user@ip /path 远程复制到本地
        • scp /path user@ip 向远程传输文件
      • rsync 根据状态进行复制,如果已经有了文件未发生变化就不复制了
        • -r递归复制 -p保留权限 –
          网络安全基础知识和ssh
    • pssh 批处理工具(epl源)
      • -h 主机文件列表 -H主机 -A手动输入密码
      • 注意 未连接过的主机直接使用话报错
    • PSCP.PSSH 批量复制文件到本地
      网络安全基础知识和ssh
      • PSLURP.PSSH -L指定文件从远程主机复制到本地位置
        • pslurp -H 192.168.1.10 -L /app/ /etc/passwd user 复制远端的passwd到本地app下改名为user

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

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code