如何解决CentOS 6无法识别DigiCert根CA证书导致Curl报“NSS error -8179”、wget无法下载问题?

问题:

CentOS 6访问部分HTTPS网站时,Curl报“NSS error -8179”、wget无法下载。例子如下:

[root@test1 src]# wget https://www.php.net/distributions/php-8.0.2.tar.gz
--2021-02-25 00:01:40--  https://www.php.net/distributions/php-8.0.2.tar.gz
Resolving www.php.net... 185.85.0.29
Connecting to www.php.net|185.85.0.29|:443... connected.
ERROR: cannot verify www.php.net's certificate, issued by `/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=Thawte TLS RSA CA G1':
  Unable to locally verify the issuer's authority.
To connect to www.php.net insecurely, use `--no-check-certificate'.



[root@test1 src]# curl -v https://www.php.net
* About to connect() to www.php.net port 443 (#0)
*   Trying 185.85.0.29... connected
* Connected to www.php.net (185.85.0.29) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* Peer's certificate issuer is not recognized: 'CN=Thawte TLS RSA CA G1,OU=www.digicert.com,O=DigiCert Inc,C=US'
* NSS error -8179
* Closing connection #0
* Peer certificate cannot be authenticated with known CA certificates
curl: (60) Peer certificate cannot be authenticated with known CA certificates
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.

原因:

CentOS 6内没有最新的DigiCert根CA证书,导致访问部分HTTPS网站出错。

解决方法:

(1)从DigiCert网站下载其根CA证书。

地址:https://www.digicert.com/kb/digicert-root-certificates.htm

截至2020-03-04,需下载的根CA证书列表有:

(A)Baltimore CyberTrust Root
Valid until: 12/May/2025
Serial #: 02:00:00:B9
SHA1 Fingerprint: D4:DE:20:D0:5E:66:FC:53:FE:1A:50:88:2C:78:DB:28:52:CA:E4:74
SHA256 Fingerprint: 16:AF:57:A9:F6:76:B0:AB:12:60:95:AA:5E:BA:DE:F2:2A:B3:11:19:D6:44:AC:95:CD:4B:93:DB:F3:F2:6A:EB

(B)DigiCert Global Root CA
Valid until: 10/Nov/2031
Serial #: 08:3B:E0:56:90:42:46:B1:A1:75:6A:C9:59:91:C7:4A
SHA1 Fingerprint: A8:98:5D:3A:65:E5:E5:C4:B2:D7:D6:6D:40:C6:DD:2F:B1:9C:54:36
SHA256 Fingerprint: 43:48:A0:E9:44:4C:78:CB:26:5E:05:8D:5E:89:44:B4:D8:4F:96:62:BD:26:DB:25:7F:89:34:A4:43:C7:01:61

(C)DigiCert Global Root G2
Valid until: 15/Jan/2038
Serial #: 03:3A:F1:E6:A7:11:A9:A0:BB:28:64:B1:1D:09:FA:E5
SHA1 Fingerprint: DF:3C:24:F9:BF:D6:66:76:1B:26:80:73:FE:06:D1:CC:8D:4F:82:A4
SHA256 Fingerprint: CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F

(D)DigiCert Global Root G3
Valid until: 15/Jan/2038
Serial #: 05:55:56:BC:F2:5E:A4:35:35:C3:A4:0F:D5:AB:45:72
SHA1 Fingerprint: 7E:04:DE:89:6A:3E:66:6D:00:E6:87:D3:3F:FA:D9:3B:E8:3D:34:9E
SHA256 Fingerprint: 31:AD:66:48:F8:10:41:38:C7:38:F3:9E:A4:32:01:33:39:3E:3A:18:CC:02:29:6E:F9:7C:2A:C9:EF:67:31:D0

(2)安装并使用ca-certificates工具,将上述文件更新到CentOS 6的根CA证书列表中。

详细方法详见:《CentOS添加根证书(根CA证书)的方法》

本页永久链接:https://www.orztip.com/?p=452&article_title=centos-6-curl-nss-error-8179-with-digicert-ca

CentOS添加根证书(根CA证书)的方法

以下假定用于已经在root环境下操作。

首先,确保安装了ca-certificates工具

yum install ca-certificates

然后,开启允许载入和动态配置自定义根CA证书

update-ca-trust enable

把相关的证书复制到目录/etc/pki/ca-trust/source/anchors/下,比如:

cp foo.crt /etc/pki/ca-trust/source/anchors/

最后执行如下命令,更新系统内的根CA证书列表:

update-ca-trust extract 

备注1:

如果不想使用自定义根证书,可使用如下命令撤销:

update-ca-trust disable

备注2:

DigiCert根CA证书下载:

https://www.digicert.com/kb/digicert-root-certificates.htm

本页永久链接:https://www.orztip.com/?p=449&article_title=centos-add-root-ca-by-ca-certificates

srt、ass、ssa字幕编辑软件推荐

一、SrtEdit

SrtEdit由MySiLU论坛ywg开发,其开发经历了众多字幕工作人员的实际测试。只是现在已经不再更新(可能停留在2012年),最后的版本停留在6.3 2012.1001。

SrtEdit对新手操作友好,其特色之一是合成或分离双语字幕,适合需要制作中英双语对照字幕等场景。可使用该软件初步处理字幕,然后再调用下述软件进行精加工。

下载地址:

https://dl.pconline.com.cn/download/456430.html

二、Subtitle Edit

Subtitle Edit是一款免费开源的字幕编辑器,开源License为GPL-3.0。

该软件目前仍在更新,界面提供中文。

下载地址:

https://www.nikse.dk/SubtitleEdit/

https://github.com/SubtitleEdit/subtitleedit/releases

三、Aegisub

Aegisub也是一款免费开源且跨平台的字幕编辑工具,开源License为GPL兼容的BSD风格协议——Windows和OS X二进制版本除外,因为包含了fftw3,故为GPLv2。

该软件开发进度较为缓慢,截止到2021年2月18日,二进制版本只发布到3.2.2(2014-12-08),最新版本需要自行拉取源代码编译。

下载地址:

https://github.com/Aegisub/Aegisub

备注:

有关字幕编辑软件的使用,可参考百度文库的各种文档,比如:

https://wenku.baidu.com/view/0fbebb6e970590c69ec3d5bbfd0a79563d1ed437.html

本页永久链接:https://www.orztip.com/?p=435&article_title=srt-ass-ssa-edit-tool-recommend

如何预防运动损伤?应用Get Set/网站FIT TO PLAY(Skadefri)来帮您

许多人不知道的是,IOC(国际奥林匹克委员会,简称为国际奥委会)有一款应用Get Set(网站是FIT TO PLAY(Skadefri)),其目标是面向专业运动员(尤其是青少年运动员)、教练员和运动爱好者,以文字、视频、计划表等多种形式,提供常见运动(包括残疾人运动)的科学训练方法,来帮助避免可能发生的运动创伤。

该应用最早亮相于2014年南京青奥会和2016年利勒哈默尔冬季青奥会,是国际奥委会联合挪威奥斯陆运动创伤研究中心(Oslo Sports Trauma Research Center)、Making Waves有限公司和多个国际体育联合会的协作下的开发成果。应用和网站内的资料到现在仍不断更新,值得各位参考。

手机应用有多国语言,其中也包括中文;但部分翻译有问题,建议比照英文阅读。网站只有英文和挪威语言。

网站FIT TO PLAY(Skadefri):

https://fittoplay.org/

苹果iOS应用“Get Set-更巧妙而有效的训‪练”:

https://apps.apple.com/cn/app/id894609112

安卓应用“Get Set – Train Smarter”:

https://play.google.com/store/apps/details?id=org.olympic.app.getset

本页永久链接:https://www.orztip.com/?p=427&article_title=sports-injury-prevention-and-rehabilitation-with-get-set-or-fit-to-play-or-skadefri

在哪里能找到用于KMS激活Windows和Office的GVLK密钥?

GVLK,为Generic Volume License Key的缩写,一组用于以KMS方式激活Windows和Office的密钥。其实微软在给IT管理员参考的在线手册文档内,就有列明这些GVLK密钥。

用于KMS激活Windows的GVLK密钥可参阅《Windows Server documentation》内的“KMS client setup keys“章节:

https://docs.microsoft.com/zh-cn/windows-server/get-started/kmsclientkeys

用于KMS激活Office的GVLK密钥可参阅《Office deployment》内的“GVLKs for KMS and Active Directory-based activation of Office 2019 and Office 2016”章节:

https://docs.microsoft.com/en-us/deployoffice/vlactivation/gvlks

部分早期Windows或者Office版本可能没有列明GVLK密钥,此时可参考py-kms的使用文档,更具体来说,是“GVLK Keys”章节:

https://py-kms.readthedocs.io/en/latest/Keys.html

本页永久链接:https://www.orztip.com/?p=420&article_title=kms-gvlk-for-windows-office

EDC手电之Fenix LD15R

由于工作和日常需要,笔者入手了深圳市朗恒照明技术股份有限公司于2018年推出的EDC手电Fenix LD15R。

作为EDC手电,7厘米的长度实现了IP68防护,挂在钥匙串揣在兜里也没有感觉,很适合随拿随用。

作为拐角手电,其柔和泛光的特性,很适合修电脑等工作用途。

作为户外应急,配备的红灯用作信标也很好使。

推荐不想将手机闪光灯当手电筒、又需要一款工作灯的用户购买。

外包装,5年质保
7厘米长度,比卡片还短
柔和泛光,中心不刺眼,适合工作用
照明
红灯照明
双向抱夹
尾部磁吸

备注:

1、EDC:Every Day Carry,即日常通勤随身携带物品。

声明:

本文章仅为笔者作为顾客的个人观点,无任何厂商赞助。

本页永久链接:https://www.orztip.com/?p=406&article_title=edc-torch-fenix-ld15r

让Windows 10将BIOS硬件时间视为协调世界时(UTC)的方法:注册表数值名称RealTimeIsUniversal

如果安装了Windows和Linux双系统,可能会遇到切换系统时出现时间错乱问题。具体表现为:使用一段时间Linux后,重启进入Windows,会发现Windows显示的时间不正确;反之亦然。

这是因为BIOS硬件时间本身并没有时区概念,但Windows和Linux对Bios硬件时间与时区关系的理解不一样。Linux将BIOS硬件时间视为协调世界时(UTC),即不存在本地时区;而Windows则将BIOS硬件时间视为当地时间,带上了设置后的时区。Windows这样做,一是早期为了兼容MS-DOS/Windows 3.x,二是为了照顾大众,防止用户问为什么BIOS显示的时间和实际不一致【1】【3】。

那么如何让Windows 10将BIOS硬件时间视为协调世界时(UTC)呢?答案是注册表数值名称RealTimeIsUniversal【2】。

以下列举不同操作注册表的方法,供参考。

方法一:手动操作法

1、以管理员身份打开注册表。

2、定位到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation”

3、如果没有看到“RealTimeIsUniversal”数值名称,新建一个,类型视操作系统位数而定:如果是64位,则类型为“QWORD”,如果是32位,类型为“DWORD”。

4、编辑“RealTimeIsUniversal”数值名称,将其值改成1。

5、重启。

方法二:注册表文件法

另一种方法则是将如下文本保存为注册表文件RealTimeIsUniversal.reg,然后双击导入,最后重启。

适用于64位Windows:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=hex(b):01,00,00,00,00,00,00,00

适用于32位Windows:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
     "RealTimeIsUniversal"=dword:00000001

方法三:命令行法

以管理员身份打开命令行,输入如下命令,然后重启。

注意:以下命令仅适合64位Windows。如果是32位Windows,请把REG_QWORD替换成REG_DWORD。

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_QWORD /f

【1】. Raymond Chen,《Why does Windows keep your BIOS clock on local time?》,2004-9-2,https://devblogs.microsoft.com/oldnewthing/20040902-00/?p=37983
【2】. https://wiki.archlinux.org/index.php/System_time#UTC_in_Windows
【3】. Markus Kuhn,《IBM PC Real Time Clock should run in UT》,2001-07-02,https://www.cl.cam.ac.uk/~mgk25/mswish/ut-rtc.html

本页永久链接:https://www.orztip.com/?p=400&article_title=let-windows-recognize-bios-time-as-utc-time-with-realtimeisuniversal