• 第九周作业


    1、判断UID是否大于等于500,如果为真就显示为普通用户,如果为假就显示为系统或管理用户

    awk -F: '{$3<500?name="普通用户":name="系统用户";print name,$1,$3}' /etc/passwd

    2、显示用户id为奇数的用户。

    awk -F: '{if ($3%2 == 1)print $1,$3}' /etc/passwd

    3、统计web服务访问日志中的ip访问量

    独立ip访问量
    awk '{print $1}' /app/httpd24/logs/access_log |sort -n|uniq -c
    总访问量
    awk '{print $1}' access_log|wc -l
    TCP连接数
    netstat -ant|grep '80'|grep 'ESTABLISHED'|wc -l

    4、简述加密类型以及数据加密解密过程

    加密:限制对网络上传输数据的访问权的技术。原始数据(也称为明文,plaintext)被加密设备(硬件或软件)和密钥加密而产生的经过编码的数据称为密文(ciphertext)。将密文还原为原始明文的过程称为解密,它是加密的反向处理,但解密者必须利用相同类型的加密设备和密钥对密文进行解密。
    
      解密:加密的逆过程,使用密钥配合加密算法,转换成明文内容。
    安全机制
        信息安全防护的目标
            保密性 Confidentiality
            完整性  Integrity
            可用性 Usability
            可控制性 Controlability
            不可否认性 Non-repudiation
        安全防护环节
            物理安全:各种设备/主机、机房环境
            系统安全:主机或设备的操作系统
            应用安全:各种网络服务、应用程序
            网络安全:对网络访问的控制、防火墙规则
            数据安全:信息的备份与恢复、加密解密
            管理安全:各种保障性的规范、流程、方法
    
    安全攻击: STRIDE
        Spoofing 假冒
        Tampering 篡改
        Repudiation 否认
        Information Disclosure 信息泄漏
        Denial of Service 拒绝服务
        Elevation of Privilege 提升权限
    
    安全设计基本原则
        使用成熟的安全系统
        以小人之心度输入数据
        外部系统是不安全的
        最小授权
        减少外部接口
        缺省使用安全模式
        安全不是似是而非
        从STRIDE思考
        在入口处检查
        从管理上保护好你的系统
    
    安全算法
        常用安全技术
            认证
            授权
            审计
            安全通信
        加密算法和协议
            对称加密
            公钥加密
            单向加密
            认证协议
    
    对称加密算法
        对称加密:加密和解密使用同一个密钥
            DES:Data Encryption Standard,56bits
            3DES:
            AES:Advanced (128, 192, 256bits)
            Blowfish,Twofish
            IDEA,RC6,CAST5
        特性:
            1、加密、解密使用同一个密钥,效率高
            2、将原始数据分割成固定大小的块,逐个进行加密
        缺陷:
            1、密钥过多
            2、密钥分发
            3、数据来源无法确认
    
    非对称加密算法
        公钥加密:密钥是成对出现
            公钥:公开给所有人;public key
            私钥:自己留存,必须保证其私密性;secret key
        特点:用公钥加密数据,只能使用与之配对的私钥解密;反之亦然
        功能:
            数字签名:主要在于让接收方确认发送方身份
            对称密钥交换:发送方用对方的公钥加密一个对称密钥后发送给对方
            数据加密:适合加密较小数据
        缺点:密钥长,加密解密效率低下
        算法:
            RSA(加密,数字签名)
            DSA(数字签名)
            ELGamal
    
    单向散列
        将任意数据缩小成固定大小的“指纹”
            • 任意长度输入
            • 固定长度输出
            • 若修改数据,指纹也会改变(“不会产生冲突”)
            • 无法从指纹中重新生成数据(“单向”)
        功能:数据完整性
        常见算法
            md5: 128bits、sha1: 160bits、sha224 、sha256、sha384、sha512
        常用工具
            • md5sum | sha1sum [ --check ] file
            • openssl、gpg
            • rpm -V
        md5sum f3 > f3.md5                        # 生成md5校验信息
        md5sum -c f3.md5                         # 检查文件md5信息是否与原数据一致
        ls|xargs md5sum {}  ; > list.md5        # 批量生产md5信息

    5、搭建私有CA并实现证书颁发

    创建CA和申请证书
        PKI:Public Key Infrastructure
            CA
            RA
            CRL
            证书存取库
        建立私有CA:
            OpenCA
            openssl
        证书申请及签署步骤:
            1、生成申请请求
            2、RA核验
            3、CA签署
            4、获取证书            
        
        创建私有CA:
            openssl的配置文件:/etc/pki/tls/openssl.cnf
            三种策略:match匹配、optional可选、supplied提供
                match:要求申请填写的信息跟CA设置信息必须一致
                optional:可有可无,跟CA设置信息可不一致
                supplied:必须填写这项申请信息,
        1、服务器创建所需要的文件
            cd /etc/pki/CA
                tree
                .
                ├── certs
                ├── crl
                ├── newcerts
                └── private
            # 已经有这4个文件,但都是空的
            a.生成私钥,必须叫private/cakey.pem
                (umask 066; openssl genrsa -out private/cakey.pem 2048)    
            b.生成自签名证书,名称必须叫cacert.pem
                openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem
                选项说明:
                    -new:生成新证书签署请求
                    -x509:专用于CA生成自签证书
                    -key:生成请求时用到的私钥文件
                    -days n:证书的有效期限
                    -out /PATH/TO/SOMECERTFILE: 证书的保存路径
            c.生成证书索引数据库文件                
                touch /etc/pki/CA/index.txt 
            d.指定第一个颁发证书的序列号
                echo 01 > /etc/pki/CA/serial 
    
    2、客户端创建所需要的文件
            mkdir /data/ssl -p
            cd /data/ssl
            a.生成私钥
                (umask 066; openssl genrsa -out app.key 1024)
            b.利用私钥,生成证书申请
                openssl req -new -key /data/ssl/app.key -out /data/ssl/app.csr
            c.上传证书申请到服务器
                scp /data/ssl/app.csr root@10.0.0.201:/etc/pki/CA
                
        3.服务器验证证书申请,并颁发证书
            openssl ca -in app.csr -out /etc/pki/CA/certs/app.crt -days 365
            按y颁发证书
            ls newcerts/01.pem                        (/etc/pki/CA/serial中的初始值顺序编号)
                certs/app.crt                        # 这两个文件一模一样
    4.下发证书至客户端
            scp /etc/pki/CA/certs/app.crt root@10.0.0.7:/data/ssl
                
        5.客户端上配置相关程序调用证书
        
        查看证书中的信息:
            openssl x509 -in /PATH/FROM/CERT_FILE -noout -text|issuer|subject|serial|dates
            openssl ca -status SERIAL 查看指定编号的证书状态
            
        吊销证书
            在客户端获取要吊销的证书的serial
                openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject
            在CA上,根据客户提交的serial与subject信息,对比检验是否与index.txt文件中的信息一致
        
        吊销证书:
            openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem
        指定第一个吊销证书的编号,注意:第一次更新证书吊销列表前,才需要执行
            echo 01 > /etc/pki/CA/crlnumber
        更新证书吊销列表
            openssl ca -gencrl -out /etc/pki/CA/crl.pem
        查看crl文件:
            openssl crl -in /etc/pki/CA/crl.pem -noout -text
  • 相关阅读:
    算法-转
    单页 SEO-转
    浅谈MVVM设计模式
    iOS-UIView动画
    iOS 核心动画(下)
    iOS开发-核心动画(Core Animation)
    iOS-CALayer的介绍
    SVN Xcode不能提交.a文件
    iOS 毛玻璃效果
    Quartz2D学习总结
  • 原文地址:https://www.cnblogs.com/bj-mr-li/p/11378309.html
Copyright © 2020-2023  润新知