我在家里设置了 pihole,所以我希望能够使用我自己的服务器处理对任何网站的请求,以显示“此网站已被阻止”页面。
我试图通过为任何 url 创建自签名证书并将其安装在我的设备上来做到这一点。我用来生成证书的命令:
openssl genrsa 2048 > pihole.key
openssl req -new -x509 -nodes -days 36500\
-key pihole.key \
-subj "/C=NL/ST=Utrecht, Inc./CN=*" \
-reqexts SAN \
-config <(cat /etc/ssl/openssl.cnf \
<(printf "\n[SAN]\nsubjectAltName=DNS:*,DNS:*")) \
-out pihole.cert
openssl x509 -noout -fingerprint -text < pihole.cert > pihole.info
cat pihole.cert pihole.info > pihole.pem
service apache2 reload
Run Code Online (Sandbox Code Playgroud)
我已经在我的 windows 设备上安装了这个证书,windows 显示它是一个有效的证书。
但是,chrome 给了我一个NET::ERR_CERT_COMMON_NAME_INVALID,edge 给了我一个类似的错误 ( DLG_FLAGS_SEC_CERT_CN_INVALID)
为什么是这样?难道CN = *只是不允许?我怎样才能达到我想要的?
好吧,我犯了一个大错误。我尝试从 coreutils:i386 升级到 coreutils:arm64,但出了问题。现在我已经没有很多程序了,包括 rm、touch、chmod 和 mv。
所以,我尝试运行apt-get install coreutils:
root@srv028:/tmp# apt-get install coreutils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
coreutils
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 0 B/2,727 kB of archives.
After this operation, 14.6 MB of additional disk space will be used.
dpkg: warning: 'rm' not found …Run Code Online (Sandbox Code Playgroud)