IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 给Neo4j添加Let‘s Encrypt SSL证书 -> 正文阅读

[网络协议]给Neo4j添加Let‘s Encrypt SSL证书

这篇文章原来是我发在medium上面的,后来发现很多人浏览,于是我决定把它也发到这边来 English Version

目录

前提条件:

为什么需要添加Let's Encrypt之类的SSL证书?

第一部分:获取Let's Encrypt证书(官方教程)

第二部分:安装SSL证书到Neo4j

最后一步:重启Neo4j服务

?

?在使用neo4j的过程中,应该很重要的问题就是使用SSL来加密数据,这篇教程就是讲解如何使用Let's Encrypt发行的SSL证书来加密neo4j的通信。

前提条件:

  • 需要有有效的DNS Name(域名)指向机器,不能只有ip地址
  • TCP 80 (HTTP)端口需要开放给任何ip(0.0.0.0/0)(Let's Encrypt http-01 challenge 需要使用)
  • 软件要求:Neo4j:>= 4.0

教程使用的机器:Neo4j Graph Database — Community Edition by Neo4j on AWS Marketplace

>> 推广:【腾讯云】爆款1核2G云服务器首年48元,还有iPad Pro、Bose耳机、京东卡等你来抽!

为什么需要添加Let's Encrypt之类的SSL证书?

因为如果使用默认证书的话(openssl自己签发的证书),如果你没有把公有证书倒入你的电脑的话会出现以下情况,导致访问的安全性出现问题,也增加了不必要的麻烦

>> 推广:vultr云服务器最低2.5美元一个月(其实能用的最低需要5美元)

>> 推广:【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。

第一部分:获取Let's Encrypt证书(官方教程

添加Certbot PPA

sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository universe
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update

?安装Certbot

sudo apt-get install certbot

获取SSL证书

sudo certbot certonly --standalone

按照提示进行操作,假设你给机器分配的域名是myneo4j.example.com,那么你可以看到/etc/letsencrypt/live/myneo4j.example.com的目录(文件夹),里面装有我们接下来需要的文件。

>> 推广:【腾讯云】DNSPod解析套餐全面升配降价,更高的套餐配置规格,更优的价格方案,全面提升可用性及响应率,专业版限时99元/年!

>> 推广:【腾讯云】云数据库MySQL基础版1元体验,为中小企业量身打造,单节点架构,保证数据可靠性

第二部分:安装SSL证书到Neo4j

接下来为了方便,以及避免“permission denied”错误,我们将使用以下命令(如果你的用户已经是root了就不需要了):

sudo su

你应该可以看到你的用户名从ubuntu之类的变成了root

我们接下来切换到neo4j的证书目录:

cd /var/lib/neo4j/certificates

这里面有三个目录(文件夹),里面分别有private.keypublic.crt,我们需要用/etc/letsencrypt/live/myneo4j.example.com/里面的privkey.pemfullchain.pem来替换掉。

**记得把myneo4j.example.com换成你机器的域名**

#./https/
cat /etc/letsencrypt/live/myneo4j.example.com/fullchain.pem > https/public.crt
cat /etc/letsencrypt/live/myneo4j.example.com/privkey.pem > https/private.key

#./bolt/
cat /etc/letsencrypt/live/myneo4j.example.com/fullchain.pem > bolt/public.crt
cat /etc/letsencrypt/live/myneo4j.example.com/privkey.pem > bolt/private.key

#./cluster/
cat /etc/letsencrypt/live/myneo4j.example.com/fullchain.pem > cluster/public.crt
cat /etc/letsencrypt/live/myneo4j.example.com/privkey.pem > cluster/private.key

有些人或许会有些疑问,为什么是rewrite里面的文件而不是替换文件呢?原因很简单,懒嘛,可以少几行代码,这样操作不用去修改crt和key文件的权限了,更加便捷。

加下来找到neo4j的config文件,应该在/etc/neo4j/下,名字为neo4j.template或者neo4j.conf。如果有template文件存在(只有它或者有template也有conf),编辑template文件,其他情况,编辑conf文件

#使用你喜欢的编辑器打开文件,比如vim或者nano
nano /etc/neo4j/neo4j.template

确保里面的#https connector是启用的,为了安全起见,可以考虑把#http connector关掉。

>> 推广:【腾讯云】腾讯云图,像PPT一样简单的数据可视化工具。5元搞定数据可视化,模板丰富,拖拖拽拽就能做出好看的可视化大屏。

最后一步:重启Neo4j服务

service neo4j restart

等待neo4j重启完毕,使用以下代码检查状态

service neo4j status

如果没有问题的话,你应该能看到?INFO Started.?字样。

恭喜你,这样你就可以通过https访问neo4j并且有了被认可机构签发的SSL证书了

对这篇文章有任何问题都可以品论留言。

我也提供有偿云服务技术支持服务可以使用手机淘宝扫描下面二维码,进行联系

?欢迎关注评论打赏

参考资料

  1. Getting Certificates for Neo4j with LetsEncrypt
  2. Certbot — Ubuntubionic Other
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-09 19:59:31  更:2021-11-09 20:00:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:49:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码