快速搭建一个端对端加密的在线聊天室
?
看到有人發(fā)了一個在線聊天室,感覺挺有意思的就做個教程
簡介
程序:rocket.chat
官網(wǎng):https://rocket.chat/
項目:https://github.com/RocketChat/Rocket.Chat
配置環(huán)境
1、進(jìn)入寶塔軟件商店,安裝PM2管理器和MongoDB:
2、進(jìn)入PM2管理器設(shè)置,將node版本改為12.14.0
3、進(jìn)入MongoDB設(shè)置,點(diǎn)擊配置文件找到 “# Where and how to store data.” 將存儲數(shù)據(jù)的地址修改為以下:
原配置
修改為:
storage:dbPath: /www/server/mongodb/Rocket.ChatdirectoryPerDB: trueengine: mmapv14、找到 “#replication:”,我的是在26行,修改如下
原配置:
修改后配置:
replication: replSetName: rs01配置完成后MongoDB會默認(rèn)關(guān)閉,這時候需要登錄一下ssh進(jìn)行創(chuàng)建存儲文件夾授權(quán)等操作
mkdir /www/server/mongodb/Rocket.Chat chown mongo:mongo /www/server/mongodb/Rocket.Chat /etc/init.d/mongodb start mongo --eval "printjson(rs.initiate())"安裝依賴
命令行下運(yùn)行以下代碼
Ubuntu/Debian
apt install -y graphicsmagick
Centos
yum install -y GraphicsMagick
安裝Rocket.Chat主程序
逐條運(yùn)行以下命令
wget -O rocket.chat.tgz https://releases.rocket.chat/latest/download //安裝時版本號為3.11.1 tar -xzf rocket.chat.tgz && rm -rf rocket.chat.tgz mv bundle /opt/Rocket.Chat cd /opt/Rocket.Chat npm install -g inherits cd programs/server npm install啟動
逐條運(yùn)行以下代碼
ln -sf $(command -v node) /usr/bin/node useradd -M rocketchat && usermod -L rocketchat chown -R rocketchat:rocketchat /opt/Rocket.Chat鑒于需要長期使用,可以選擇是否配置守護(hù)進(jìn)程。需要的就復(fù)制下面代碼整體粘貼運(yùn)行
cat > /etc/systemd/system/rocketchat.service <<EOF [Unit] Description=Rocket.Chat After=network.target Wants=network.target[Service] ExecStart=$(command -v node) main.js StandardOutput=syslog StandardError=syslog SyslogIdentifier=rocketchat User=rocketchat WorkingDirectory=/opt/Rocket.Chat Environment=MONGO_URL=mongodb://127.0.0.1:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://127.0.0.1:27017/local?replicaSet=rs01 ROOT_URL=http://127.0.0.1:3000/ PORT=3000 Type=simple Restart=on-failure RestartSec=42s[Install] WantedBy=multi-user.target EOF然后啟動Rocket.Chat
systemctl start rocketchat
查看Rocket.Chat的狀態(tài):
systemctl status rocketchat設(shè)置開機(jī)自啟:
systemctl enable rocketchat然后去到寶塔安全里面,放行3000端口,此時就可以通過IP:3000訪問了。
各大云廠商的云服務(wù)器也需要放行3000端口,本次演示的為騰訊云輕量學(xué)生機(jī)升級版,108年2C4G6M1000GB最高續(xù)費(fèi)4年十分的香 學(xué)生機(jī)購買:https://curl.qcloud.com/hQiFtUjz
良心云的輕量延期了,延長到了3.10號(感覺會一直延長下去),如果學(xué)生機(jī)買不到可以參考這里https://curl.qcloud.com/PewqZwe6 1C2G5M 488三年 找個八折代理跟學(xué)生機(jī)原價差不多
有資格搶學(xué)生機(jī)的可以等晚上零點(diǎn)補(bǔ)貨再搶
?
騰訊云輕量服務(wù)器添加防火墻:
進(jìn)入到服務(wù)器管理面板然后防火墻放行
配置域名
現(xiàn)在直接訪問ip:3000就可以訪問了,為了正式一點(diǎn)我們配置一下域名
試了一下直接用寶塔的反代可以是可以但是會有點(diǎn)小問題,所以我們手動配置下
進(jìn)入站點(diǎn)的配置文件,插入如下代碼:
location ~ ^/.* { proxy_pass http://127.0.0.1:3000; proxy_set_header Host ? ? ? ? ? ? $host; proxy_set_header X-Real-IP ? ? ? $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forward-Proto http; proxy_set_header X-Nginx-Proxy true; proxy_http_version 1.1;proxy_redirect off; }再配置一下ssl證書就大功告成啦
一個LOC大佬已經(jīng)搭建好的聊天室:
srl.srl
注意事項
免費(fèi)的版本有用戶和推送消息等限制哦,如果用戶量大建議升級一下套餐。
本文首發(fā)地址:https://2demo.top/200.html
總結(jié)
以上是生活随笔為你收集整理的快速搭建一个端对端加密的在线聊天室的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css3-12 transition+c
- 下一篇: 使用java修改图片DPI