溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux中如何使用OpenSSL命令

發(fā)布時(shí)間:2022-02-19 10:36:49 來(lái)源:億速云 閱讀:275 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要講解了“Linux中如何使用OpenSSL命令”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Linux中如何使用OpenSSL命令”吧!

OpenSSL是一個(gè)強(qiáng)大的安全套接字層密碼庫(kù),Apache使用它加密HTTPS,OpenSSH使用它加密SSH,但是,你不應(yīng)該只將其作為一個(gè)庫(kù)來(lái)使用,它還是一個(gè)多用途的、跨平臺(tái)的密碼工具。

Linux中如何使用OpenSSL命令

OpenSSL 運(yùn)行模式

交互模式

批處理模式

直接輸入 openssl 回車進(jìn)入交互模式,輸入帶命令選項(xiàng)的 openssl 進(jìn)入批處理模式。

[root@centos7 ~]# opensslOpenSSL> version
OpenSSL 1.0.2k-fips  26 Jan 2017

OpenSSL 整個(gè)軟件包大概可以分成三個(gè)主要的功能部分:密碼算法庫(kù)、SSL 協(xié)議庫(kù)以及應(yīng)用程序。

openssl 命令主要用途

創(chuàng)建和管理私鑰,公鑰和參數(shù)

公鑰加密操作

創(chuàng)建 X.509 證書,CSR 和 CRL

消息摘要的計(jì)算

使用密碼進(jìn)行加密和解密

SSL/TLS 客戶端和服務(wù)器測(cè)試

處理 S/MIME 簽名或加密的郵件

時(shí)間戳請(qǐng)求,生成和驗(yàn)證

語(yǔ)法格式

openssl command [ command_opts ] [ command_args ]

openssl [ list-standard-commands | list-message-digest-commands | list-cipher-commands | list-cipher-algorithms | list-message-digest-algorithms | list-public-key-algorithms]

openssl no-XXX [ arbitrary options ]

選項(xiàng)說(shuō)明

Linux中如何使用OpenSSL命令

應(yīng)用舉例

版本信息
[root@centos7 ~]# openssl versionOpenSSL 1.0.2k-fips  26 Jan 2017
[root@centos7 ~]# openssl version -aOpenSSL 1.0.2k-fips  26 Jan 2017
built on: reproducible build, date unspecified
platform: linux-x86_64
options:  bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: gcc -I. -I.. -I../include  -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DKRB5_MIT -m64 -DL_ENDIAN -Wall -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -Wa,--noexecstack -DPURIFY -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM
OPENSSLDIR: "/etc/pki/tls"engines:  rdrand dynamic

#版本號(hào)和版本發(fā)布日期(OpenSSL 1.0.2k,2017年1月26日) #使用庫(kù)構(gòu)建的選項(xiàng)(options) #存儲(chǔ)證書和私鑰的目錄(OPENSSLDIR)

生成密碼功能
[root@centos7 ~]# openssl rand -base64 15DYmkj+RY9QUcb4m5aoNV
[root@centos7 ~]# openssl rand -base64 10RpyTN5W7BLznjA==
[root@centos7 ~]# openssl rand -base64 5AeQaaBE=
消息摘要算法應(yīng)用

#用SHA1算法計(jì)算文件openssl1.txt的哈西值

[root@centos7 ~]# openssl dgst -sha1 openssl1.txtopenssl1.txt: No such file or directory
[root@centos7 ~]# touch openssl1.txt[root@centos7 ~]# openssl dgst -sha1 openssl1.txtSHA1(openssl1.txt)= da39a3ee5e6b4b0d3255bfef95601890afd80709

#用SHA1算法計(jì)算文件openssl1.txt的哈西值,輸出到文件sha1.txt

[root@centos7 ~]# openssl sha1 -out sha1.txt openssl1.txt[root@centos7 ~]# cat sha1.txtSHA1(openssl1.txt)= da39a3ee5e6b4b0d3255bfef95601890afd80709
對(duì)稱加密應(yīng)用

#給文件openssl1.txt用base64編碼,輸出到文件jiami.txt

[root@centos7 ~]# cat openssl1.txtopenssl
[root@centos7 ~]# openssl base64 -in openssl1.txt -out jiami.txt[root@centos7 ~]# cat jiami.txtb3BlbnNzbAo=
DSA 應(yīng)用

#生成1024位DSA參數(shù)集,并輸出到文件jm.pem

[root@centos7 ~]# openssl dsaparam -out jm.pem 1024Generating DSA parameters, 1024 bit long prime
This could take some time
........+...........+..................+.....+..............+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*
.+...+..........+......+.....+..+......+.........+.........+.................+............+...........+..................+...........+........+............+....+.+......+....+...............................+.................+.................+.+......+.......+..........+........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*
[root@centos7 ~]# cat jm.pem-----BEGIN DSA PARAMETERS-----
MIIBHgKBgQCR+2rHHnotQERnaw1i3PaeeGyhZHP7Mjih9RAnNRv3oe+HO2AgiLgr
vWLbT/oRNZhdnvuW8u8b1dmm9xPwwAfkNt0cPyH+28HNJ6ImoO9qQCBVlgPnwmah
WPtA9TXIw7kJVOCUImKKXkbQvKOvlXsTgFHhhQ9GAt9gbHxmWVhqjwIVANzDXsuC
hXZDNAR6O0Dke4p/4H1XAoGAHzT3cByKaD0IN0zCXA0yXMNlyDtE8w7dlv37LcaR
7u0ZV1r4zof/g7Pf+GCHbkVUVPzTrrlkn1Wfqtl2QsmT73jMBwPl+z3Oj7DyFb8J
Nm66epCO1uLaXoIubTZa4QFCuuTarWouizo4qDYQg/vYRDBQK8N5nIh8Wfnte9gq
zTY=
-----END DSA PARAMETERS-----
RSA 應(yīng)用

#產(chǎn)生1024位RSA私匙,用3DES加密它,口令為mingongge,輸出到文件rsa.pem

[root@centos7 ~]# openssl genrsa -out rsa.pem -passout pass:mingongge -des3 1024Generating RSA private key, 1024 bit long modulus
....................++++++
...............++++++
e is 65537 (0x10001)
[root@centos7 ~]# cat rsa.pem-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,34B51F9BE30A3448

uvI8+9g2NGBS+t6VoxUW9JvjiSSnXAHVgJXFsiPtQRIQq3tUEv48QVXOXrLMSTei
DOmScLCrU0X+il+Kl2HtTEqmqzxmP+HlbiahSMthTbXUEcqSnKt/80UxzsKFWsag
lYj5yl+skQoMYLHt0JSc2MlWA6tAHPdEb4/BoEN0zerhgVcXDlLeFXm7ni1tUmVj
mbHmM1TV03kxxzd8KQhFsQkwT/aDtm143rxVrD3NpSS4eXbzm8D4B2A3L0DMaUzk
cAql+iggvH4vS3BCKOX6h6Zr9Vyo4CGjvYSyvkASbc+fVKgvmPM9KP0+hedUH2Hc
55K1ND5S0TWa2qFWk511tKbpBT9RM5P7ipcnr3tyya/RSpVZT7EpEUm+EokOrvHg
SY6AgPSojYdDL3/WrQvJAkMQmuckpEW1lNYGSgFsQmRN8gFb8LXhr+uUf8psT3D9
+Cvo5ynkocW1P1sHpJHuA7WtW7SaRbBGwEoPKjzAfKaV41oz9Sknn1PE5LXpvtIA
zn/vVbKVQvD3ho2I2RuX5vtI7Jvy/TeKDOO9fAuNKqlR7/MmqE7OiKZovuh3xHRk
3d3qif8uH6dCe7l6rElqgONNkYYJ/dBgJ+ZV15ahJFNK10JoBqFgF9dj+vFumWGt
7FuN2kk7Qe1YSn13ZZ7M10EWDPxaMXSnjynazC8MLnokRwf1SwqsZW250J9/dbvt
BEE00IQWC+RmaRgJV+H+3gvCHyMZBRGaxUKiOftrM9Ir3w28wk2jwgSm6v6p/WUg
4JUMPAqjft82lv+MwfKn4OHnuIyfgrZGB6+oR52BToQ=
-----END RSA PRIVATE KEY-----

感謝各位的閱讀,以上就是“Linux中如何使用OpenSSL命令”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Linux中如何使用OpenSSL命令這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI