久久99热66热这里只有精品,特黄特色的大片在线观看,亚洲日本三级在线观看,国产三级农村妇女在线,亚洲av毛片免费在线观看,哺乳叫自慰在线看,天天干美女av网

linux下的加密解密學(xué)習(xí) -電腦資料

電腦資料 時(shí)間:2019-01-01 我要投稿
【www.dameics.com - 電腦資料】

    加密/解密:

    加密協(xié)議:加密解密使用同一秘鑰:3des,aes

    公鑰加密:公鑰私鑰對(duì)

    數(shù)字簽名,密鑰交換

    RSA,DSA數(shù)據(jù)簽名算法(DSS數(shù)據(jù)簽名標(biāo)準(zhǔn))

    單向加密:

    md5,sha1,sha256,sh512(MD5輸出128bit,SHA1輸出160bit,SHA256輸出256bit)

    密鑰交換:

    DH:Deffie-Hellman

    具體過(guò)程參照下面的SSL握手

    ===================================================

    SSL:secure socket layer

    ssl:sslv3現(xiàn)版本

    IETF:tlsv1.0對(duì)位sslv3 tlsv1.2現(xiàn)在

    ssl握手:

    客戶端->服務(wù)端:客戶端自身支持的算法,請(qǐng)求服務(wù)器數(shù)字證書(shū)

    服務(wù)端->客戶端:服務(wù)器端支持加密算法,發(fā)送數(shù)字證書(shū)(客戶端驗(yàn)證信息后,數(shù)字證書(shū)中得到服務(wù)端公鑰,加密發(fā)送服務(wù)器)

    客戶端驗(yàn)證數(shù)據(jù):1.服務(wù)器名字與證書(shū)名字是否一致;2.用本地緩存的對(duì)應(yīng)信任CA公鑰,解密證書(shū),查看是否一致;3.檢察證書(shū)內(nèi)容是否被篡改,單向加密碼驗(yàn)證;4.看證書(shū)是否到期;5看證書(shū)是否到期

    客戶端->服務(wù)端端:加密數(shù)據(jù)發(fā)給客戶端,對(duì)稱(chēng)秘鑰交換,之后對(duì)稱(chēng)秘鑰加密通訊

    數(shù)字證書(shū):

    CA:簽發(fā)安全證書(shū),確保數(shù)據(jù)安全性

    ===============================================

    openssl:

    組成部分:

    libcrypto:加密解密文件

    libssl:ssl協(xié)議實(shí)驗(yàn)

    openssl:多用途命令行工具,自定義

    gpg:pgp規(guī)范的實(shí)現(xiàn)

    openssl加密命令:

    加密文件(對(duì)稱(chēng)加密):

    工具:openssl enc,gpg

    算法:des,3des,aes,blowfish,twofish,idea,cast5

    enc工具:

    加密openssl enc -e -算法 -a -salt -in 加密文件 -out 輸出文件

    解密openssl enc -d -算法 -a -salt -in 加密文件 -out 輸出文件

    可通過(guò)openssl ?查看

    -a表示文本編碼輸出

    -salt加隨機(jī)數(shù)

    TEST:

    單向加密:

    算法:md5,sha1

    工具:openssl dgst,md5sum,sha1sum,sha224sum,sha256sum,sha384sum,

    sha512sum

    openssl dgst -算法 PATH 此處算法為上述算法且不限于上述算法,但不同于加密算法

    mac碼:用于表示數(shù)據(jù)完整性的值

    機(jī)制:CBC-MAC

    HMAC:md5或者sha1算法

    生成用戶密碼:

    openssl passwd -1 -salt 8位隨機(jī)數(shù)

    生成隨機(jī)數(shù):openssl rand -hex 4

    公鑰加密:

    工具:gpg ,openssl rsautl

    生成密鑰對(duì):

    操作過(guò)程:生成私鑰,從私鑰中提取公鑰

    openssl genrsa -out PATH NUM_BITS

    括號(hào)內(nèi)的命令:通過(guò)打開(kāi)一個(gè)子shell進(jìn)程進(jìn)行

    (umask 077;openssl genrsa -out PATH NUM_BITS)主要為了安全性考慮,子shell運(yùn)行不影響原機(jī)環(huán)境

    從私鑰中提取公鑰:

    openssl rsa -in PATH -pubout

    公鑰加密:完成秘鑰交換

    私鑰加密:完成身份驗(yàn)證

   

    隨機(jī)數(shù)生成器:

    random( 安全系數(shù)較高), urandom

    熵池:保存硬件中斷產(chǎn)生的隨機(jī)數(shù)

    /dev/random:僅從熵池中返回隨機(jī)數(shù),當(dāng)熵池中的隨機(jī)數(shù)耗盡時(shí),取隨機(jī)數(shù)的進(jìn)程將會(huì)被阻塞;

    /dev/urandom:先從熵池中取隨機(jī)數(shù),當(dāng)熵池中的隨機(jī)耗盡時(shí),就通過(guò)偽隨機(jī)數(shù)生成器生成隨機(jī)數(shù);

    使用openssl構(gòu)建私有CA:

    1.生成秘鑰

    2.生成自簽署簽名

    (1) 私鑰用于簽發(fā)證書(shū)時(shí),向證書(shū)添加數(shù)字簽名使用;

    (2) 證書(shū):每個(gè)通信方都導(dǎo)入此證書(shū)至“受信任的證書(shū)頒發(fā)機(jī)構(gòu)”;

    創(chuàng)建CA配置文件 :/etc/pki/tls/openssl.cnf (查看此文件可查看一下配置文件存放位置及相關(guān)信息)

    工作目錄:/etc/pki/CA/

    1.建立私有秘鑰文件:/etc/pki/CA/private/cakey.pem

    (umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)

    2.生成自簽署簽名:從密鑰從提取公鑰及數(shù)字簽名證書(shū)到/etc/pki/tls/openssl.cnf指定的certificate指定位置

    # openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days #

    -new: 生成新的證書(shū)簽署請(qǐng)求;

    -key:私鑰文件路徑,用于提取公鑰;

    -days N: 證書(shū)有效時(shí)長(zhǎng),單位為“天”;

    -out:輸出文件保存位置;

    -x509:直接輸出自簽署的證書(shū)文件,通常只有構(gòu)建CA時(shí)才這么用;

   

    3.提供輔助文件:提供幫助文件及輸入序列號(hào)

    touch /etc/pki/CA/index.txt

    echo 01 > /etc/pki/CA/serial

    分發(fā)證書(shū):

    TEST:

    Openssh:

    ssh:secure shell (監(jiān)聽(tīng)tcp/22) 用于取代talnet(明文傳輸,監(jiān)聽(tīng)tcp/23)

    現(xiàn)在主流版本為V2

    兩種驗(yàn)證方式:

    1.用戶口令

    2.密鑰對(duì)驗(yàn)證

    Openssh:ssh開(kāi)源軟件

    sshd: 服務(wù)器

    ssh: 客戶端

    scp: 安全跨主機(jī)復(fù)制工具,基于ssh協(xié)議實(shí)現(xiàn);

    sftp:安全ftp

    服務(wù)器配置文件:sshd: /etc/ssh/sshd_config

    客戶端配置文件:ssh: /etc/ssh/ssh_config

    基于密鑰認(rèn)證:

    在客戶端生成一對(duì)密鑰,私自己留存;公鑰通過(guò)私密方式保存至要登錄的遠(yuǎn)程服務(wù)某用戶的家目錄的專(zhuān)用于ssh通信的文件;

    生成秘鑰 :ssh-keygen -t rsa

    傳輸秘鑰:ssh-copy-id -i ~/.ssh/id_rsa.put user@host

    scp遠(yuǎn)程復(fù)制命令:

    push: scp [-rp] /path/from/somefile user@host:/path/to/somewhere

    pull: scp [-rp] user@host:/path/from/somefile /path/to/somewhere

    -P portnumber(一旦默認(rèn)端口更改需加此參數(shù))

    sshd服務(wù)器端的配置:

    /etc/ssh/sshd_config

    directive value

    Port 22     監(jiān)聽(tīng)端口

    AddressFamily any 監(jiān)聽(tīng)地址(通過(guò)那個(gè)地址對(duì)外提供服務(wù))

    Protocol 2    版本協(xié)議

    限制可登錄用戶:

    PermitRootLogin : 是否允許管理員直接登錄;

    AllowUsers user1 user2 ...允許登陸白名單

    AllowGroups grp1 grp2 ... 允許登陸組白名單

    DenyUsers user1 ...   允許登陸黑名單

    DenyGroups grp1 ...   允許登陸黑名單

    僅監(jiān)聽(tīng)需要監(jiān)聽(tīng)的IP地址:

    ListenAddress 0.0.0.0

    最大允許登陸嘗試數(shù):

    MaxAuthTries 6

    ssh登陸log日志:

    /var/log/secure

最新文章