我們都知道, Let’s Encrypt 的默認RSA密鑰長度是 2048Bits ,在創建網站證書的時候沒有修改這個配置的話,可能就是後悔終生(不)幸好,在90天的有效期過後,我們能夠輕鬆通過一行命令解決這個問題。
certbot renew --rsa-key-size 4096
Just run this bad boy, and you’re good to go.
白翼的服務器運維博客
我們都知道, Let’s Encrypt 的默認RSA密鑰長度是 2048Bits ,在創建網站證書的時候沒有修改這個配置的話,可能就是後悔終生(不)幸好,在90天的有效期過後,我們能夠輕鬆通過一行命令解決這個問題。
certbot renew --rsa-key-size 4096
Just run this bad boy, and you’re good to go.
最近買了好幾個新域名,分別是 .gd, .io 後綴的。一直以來都看見 Hexonet 支持 DNSSEC ,但怎麼就是沒在面板上看見任何選項呢?
今天查了一下,終於知道如何操作。得手動在 API 中輸入命令…
參考資料: https://wiki.hexonet.net/wiki/DNSSEC http://bp.la/hexonet-cloudflare-dnssec/
首先,打開 Hexonet 的 API 執行頁面,(https://cp.hexonet.net/cp2/index.php/tools/apiaccess)
然後按照以下格式輸入命令:
command = ModifyDomain domain = example.com secDNS-urgent = 1 secDNS-ds0 = [KEYTAG] [ALGORITHM] [DIGEST-TYPE] [DIGEST]
這裡面唯一一個坑就是 Digest Type 吧, CloudFlare 提供的是 SHA256 ,然而這不存在…查了一下官方資料, 2 代表 SHA256 ,嗯。
從Percona的Repo處安裝他們的數據庫軟件通常都會導致很多問題…
在CentOS上最常見的案例是跟系統自己的MariaDB-libs衝突(即便是全新安裝的系統),這個時候需要做的事情很簡單,就是單獨卸載掉MariaDB-libs(系統並不需要原帶的數據庫文件去啟動Percona Server)。
yum remove mariadb-libs
簡簡單單解決問題。
(注意:使用yum remove理應能夠做到不牽扯依賴包而只單一卸載該軟件包,如果發現其他依赖包被yum管理器一同要求卸載,應立即停止操作)
(Artwork from @kato_roku on Twitter)
最近Google新出的玩物,大家都很開心的在玩,這邊在回國之後也坐下來玩了一下。
本文章基於本人在Linode運行的服務器,系統為CentOS 7。
這裡有一個問題就是大家都以為Linode上了4.9.0內核,理所當然內置BBR了,但Linode官方其實沒有編譯進去,我們還是得自己編譯內核。
本文大部分參考了 https://blog.linuxeye.com/452.html ,Please check them out。
cat > /etc/yum.repos.d/elrepo.repo << EOF
[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository - el7
baseurl=http://elrepo.org/linux/kernel/el7/\$basearch/
http://mirrors.coreix.net/elrepo/kernel/el7/\$basearch/
http://jur-linux.org/download/elrepo/kernel/el7/\$basearch/
http://repos.lax-noc.com/elrepo/kernel/el7/\$basearch/
http://mirror.ventraip.net.au/elrepo/kernel/el7/\$basearch/
enabled=1
gpgcheck=0
EOF
注意:GRUB2只是給KVM用的,Xen用戶請照常使用 /boot/grub/menu.lst 來引導啟動。
yum -y install kernel-ml grub2
[root@localhost ~]# ls -l /boot/vmlinuz*
-rwxr-xr-x 1 root root 6037696 Dec 29 12:47 /boot/vmlinuz-0-rescue-72863e389b584a4dab36fae7f3bffda2
-rwxr-xr-x 1 root root 6037696 Dec 11 21:37 /boot/vmlinuz-4.9.0-1.el7.elrepo.x86_64
[root@localhost ~]# mkdir /boot/grub
[root@localhost ~]# grub2-mkconfig -o /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.9.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.9.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-72863e389b584a4dab36fae7f3bffda2
Found initrd image: /boot/initramfs-0-rescue-72863e389b584a4dab36fae7f3bffda2.img
done
之後在Linode的面板配置文件中選擇使用 GRUB 2 啟動即可。
[root@localhost ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.9.0-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.36.3.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-153a217486fe4be8a8dbd28db67ed581) 7 (Core)
[root@localhost ~]# grub2-set-default 0
編輯 /boot/grub/menu.lst :
timeout 5
title CentOS (4.9.0-1.el7.elrepo.x86_64)
root (hd0)
kernel /boot/vmlinuz-4.9.0-1.el7.elrepo.x86_64 root=/dev/xvda
initrd /boot/initramfs-4.9.0-1.el7.elrepo.x86_64.img
然後在Linode的面板配置文件中選擇 pv-grub-x86_64 啟動方式。
注意:以上更換內核方式均需重啟。
cat >>/etc/sysctl.conf << EOF
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
EOF
sysctl -p
[root@localhost ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr cubic reno
[root@localhost ~]# lsmod | grep bbr
tcp_bbr 16384 16
曾經的我天真的以為只要在 Nginx 配置文件中寫上 ssl http2 就是在用 HTTP/2 了…
經過 Maxsum 的提醒,我錯了…我錯在低估了 CentOS 的軟件版本落後程度。
Maxsum 在跟我說 ALPN 時,我還在圖樣的想著 ALPN 是什麼,而去問 Google 。很明顯,如果系統上的 OpenSSL 版本太舊,或者說使用了 Nginx 官方提前編譯好的安裝包,基本都是不支持 ALPN (HTTP/2 所需特性)的 1.0.1e 版本。
於是,幹活吧。
從官網上拖下最新的 OpenSSL 1.1.0c 壓縮包,重新編譯一次 Nginx 。
Welcome to HTTP/2 now.
你好,歡迎來到白翼的服務器運維博客,但又已經不是你熟知的那個博客。
曾經的內容,今後會在某個二級域名上線,至於是哪個二級域名,我也不想公開,就讓那些內容成為古老的寶藏,等待探險人的發現吧。
好了,我們迴歸本質,談談技術。
這次為何重啟博客,有幾個理由:
還有就是,對於我這種懶癌晚期患者來說,能夠動手做這麼大改裝,一定是服務器環境也煥然一新了。
That’s right,歡迎體驗這個由 PHP 7.1 + Percona 5.7 + Nginx 1.11 驅動的服務器,部署了 Let’s Encrypt (Certbot),而且,每一個部署細節都用 Shell 腳本寫了下來,再也無需手動輸入命令肝到天亮。
Check them out:
https://github.com/richardevs/Self-written-bash-script
這次的服務器環境配置可以說是我第一次挑戰全部靠自己,之前因為網站數量過多,一直都依賴著 Virtualmin 的幫助,而 Virtualmin 的臃腫安裝步驟也實在很吃資源,於是,每一點的不滿都成為推動人類進步的動力(?)
總結一下這次遇到的困難,其實比起以前,這次可以說是很暢通無阻了:
最後,再次歡迎你到來/回來。