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.www58058.com/86882

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

相關推薦

  • N25第四周總結(raid)

    raid詳解 大綱:    1、什么是raid      2、如何實現raid      3、為什么要使用raid      4、raid使用方法詳解      5、mdadm(軟raid)使用   …

    Linux干貨 2016-12-22
  • Linux磁盤與文件系統管理

    對于一塊磁盤,如果我們想要使用的話,需要對磁盤進行分區并建立文件系統。下面,我們就了解一下Linux中的磁盤與文件系統管理 一、MBR 硬盤的0扇區為MBR扇區,其由以下幾部分組成: l  主引導程序(偏移地址0000H–0088H),它負責從活動分區中裝載,并運行系統引導程序。 l  出錯信息數據區,偏移地址0089H&#8…

    Linux干貨 2016-08-28
  • 配額、RAID、軟RAID以及LVM管理

    磁盤配額允許控制用戶或者組織對磁盤的使用,它能防止個人或者組織使用文件系統中超過自己使用的部分,或者造成系統完全擁堵。配額必須由root用戶或者具有root權限的用戶啟用和管理。 硬RAID以及軟RAID :RAID是Redundant Array of Independent Disks的簡寫,即獨立硬盤冗余陣列,簡稱磁盤陣列。通過實現的方式不同…

    Linux干貨 2016-11-23
  • 馬哥教育網絡班20期 第8周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋:工作于數據鏈路層,實現多個lan之間數據的轉發,隔離沖突域,類似二層交換機。 集線器:工作于物理層,實現設備的接入,數據信號放大、中轉,共享信道。把一個端口接收的所有信號向所有端口分發出去 二層交換機:工作于數據鏈路層,可連接多個lan,根據幀的mac來轉發數據,隔離沖突域…

    Linux干貨 2016-08-15
  • CentOS 6 啟動流程

    CentOS6啟動流程 1.加載BIOS的硬件信息,獲取第一個啟動設備 2.讀取第一個啟動設備MBR的引導加載程序(grub)的啟動信息 3.加載核心操作系統的核心信息,核心開始解壓縮,并嘗試驅動所有的硬件設備 4.核心執行init程序,并獲取默認的運行信息 5.init程序執行/etc/rc.d/rc.sysinit文件 6.啟動核心的外掛模塊 7.ini…

    2017-09-01
  • Linux系統下的翻譯神器——Goldendict

    Linux系統下的翻譯神器——Goldendict 學習Linux時明顯感受到學習英文的重要性。絕大多數Linux的發行版英文版的功能要遠強于中文。因此一款好的翻譯軟件是了解熟悉Linux系統的必需品。在Windows系統下有各種好用的詞典程序,包括有道詞典、bing詞典、金山詞霸等等,而這些軟件都不能在linux下使用,即使能夠使用也只是測試版,功能太少。…

    Linux干貨 2017-04-24

評論列表(1條)

  • h
    h 2017-09-13 11:14

    內容不錯,注意排版,繼續加油!

欧美性久久久久