[HTTPS免费证书安装] Centos7安装certbot获得并更新证书(使用Snap)

背景

目前certbot不推荐在centos7上使用仓库安装,官方建议使用snap进行certbot的安装和更新。官方原文如下:

While the Certbot team tries to keep the Certbot packages offered by various operating systems working in the most basic sense, due to distribution policies and/or the limited resources of distribution maintainers, Certbot OS packages often have problems that other distribution mechanisms do not. The packages are often old resulting in a lack of bug fixes and features and a worse TLS configuration than is generated by newer versions of Certbot. They also may not configure certificate renewal for you or have all of Certbot’s plugins available. For reasons like these, we recommend most users follow the instructions at https://certbot.eff.org/instructions and OS packages are only documented here as an alternative.

翻译:

尽管Certbot团队试图保持各操作系统的Certbot包在最基本的功能上运作,但由于各发行版的政策和有限的维护人员,Certbot OS包通常存在其他发行版本没有的问题。这些包通常很旧,导致缺少bug修复和一些特性,并且TLS的配置比新版本Certbot生成的较差。他们也可能没有为你配置证书更新,或者没有Certbot的全部可用插件。出于这些原因,我们建议大多数用户按照https://certbot.eff.org/instructions而操作系统包在这里只是作为一个替代方案。

安装Snapd

官方给出的文档https://snapcraft.io/docs/installing-snapd,这里翻译一下CentOS版本

Snap在CentOS 7.6版本以上均可用,如果不知道你的版本,使用如下命令查看

cat /etc/centos-release
  • 添加CentOS repository

CentOS 8

sudo dnf install epel-releasesudo dnf upgrade

CentOS 7

sudo yum install epel-release
  • 添加EPEL repository后,进行Snapd的安装
sudo yum install snapd
  • 安装后,需要启用管理snap通信套接字的systemd unit
sudo systemctl enable --now snapd.socket
  • 为了启用classic snap的支持,需要创建如下软连接**
sudo ln -s /var/lib/snapd/snap /snap
  • 重新登录或者重启你的系统,以确保snap的路径正确更新,至此snap安装完成。

安装Certbot

  • 升级snap

执行如下命令以保证Snap为最新的版本

sudo snap install coresudo snap refresh core
  • 卸载Certbot和其他Certbot OS包

如果使用操作系统包管理器(如apt、dnf或yum)安装了任何Certbot包,则应在安装Certbot snap之前将其删除,以确保在运行命令Certbot时使用snap,而不是从操作系统包管理器安装。执行此操作的确切命令取决于你的操作系统,常见的示例有sudo apt get remove certbot、sudo dnf remove certbot或sudo yum remove certbot。

如果以前通过Certbot auto脚本使用Certbot,还应该按照此处的说明删除其安装。

  • 安装Certbot
sudo snap install --classic certbot
  • 配置Certbot命令行

执行如下命令以确保Certbot命令行可用

sudo ln -s /snap/bin/certbot /usr/bin/certbot
  • **运行Certbot(二选一) **

1、运行此命令获取证书,并让Certbot自动编辑Nginx配置以提供服务,只需一步即可打开HTTPS访问

sudo certbot --nginx

注:Certbot默认nginx配置文件在 /etc/nginx/nginx.conf/usr/local/etc/nginx/nginx.conf
若你的nginx配置文件不在此处(以/usr/local/nginx/conf/nginx.conf为例),
需在命令后加上 --nginx-server-root /usr/local/nginx/conf

或设置软连接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
ln -s /usr/local/nginx/conf/ /etc/nginx

2、仅获得证书。如果你希望手动配置nginx,输入如下命令

sudo certbot certonly --nginx

注:同上

然后跟着提示,可进行域名的https设置,也可以之后添加

sudo certbot --expand -d xxx.xxx.com,www.xxx.com
  • 自动续期

Certbot包带有cron作业或systemd计时器,它将在证书过期之前自动续订证书。除非更改配置,否则不需要再次运行Certbot。通过运行以下命令,可以测试证书的自动续订

sudo certbot renew --dry-run

renew的命令被配置到以下位置中的一个:

/etc/crontab//etc/cron.*/*systemctl list-timers

参考

如果你已经使用 Certbot 生成了证书,并想在新添别的域名,比如,你已经有一张域名是 baidu.com 的 SSL 证书,想添加 www.baidu.com,则可以使用下面的命令:

sudo certbot --expand -d baidu.com,www.baidu.com

申请https证书时遇到错误:

The nginx plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError("Could not find a usable 'nginx' binary. Ensure nginx exists, the binary is executable, and your PATH is set correctly.")

解决方案:

提示错误:(也就是找不到nginx)

Could not choose appropriate plugin: The nginx plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError("Could not find a usable 'nginx' binary. Ensure nginx exists, the binary is executable, and your PATH is set correctly.",)

由于没有将nginx放到环境变量中,设置nginx软连接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
ln -s /usr/local/nginx/conf/ /etc/nginx

当使用 which nginx 时,报错:

执行which nginx显示如下

/usr/bin/which: no nginx in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)

说明在 (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) 这些路径下都没有nginx的可执行文件,所以执行不了which,解决办法也可以采取上面的解决方案

今天在kali里面需要使用snap安装httpie工具,然后发现有如下错误

kali@kali:~/tutorial$ sudo snap install core
[sudo] password for kali:
error: cannot communicate with server: Post "http://localhost/v2/snaps/core": dial unix /run/snapd.socket: connect: no such file or directory

error: cannot communicate with server: Post "http://localhost/v2/snaps/core": dial unix /run/snapd.socket: connect: no such file or directory
出现上述错误

然后查找原因,可能是因为刚刚安装snap,没有启动服务,具体参考后面网址。

做如下操作:

 #启动snapd服务

service snapd start

sudo systemctl start snapd.service

再次使用snap工具安装httpie

kali@kali:~/tutorial$ sudo snap install core
2021-06-22T15:52:40+08:00 INFO Waiting for automatic snapd restart...
core 16-2.51 from Canonical✓ installed

成功实现安装,解决问题!
参考:

1、https://stackoverflow.com/questions/59545217/how-do-i-fix-the-snapd-socket-no-such-file-or-directory-error-on-mxlinux

转并整理自
https://blog.csdn.net/AlistairEd/article/details/113804554
https://blog.csdn.net/hcu5555/article/details/118109310
https://blog.csdn.net/qq_27346503/article/details/115680526
https://www.jianshu.com/p/0a48b198ee76

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容