Parse-Server后台搭建与使用进阶篇(二)- Parse-server常见问题及解决方法

上篇Parse-Server后台搭建与使用基础篇(一)- 阿里云ECS Parse-server的简单搭建与使用,简单介绍了一下在一台服务器上搭建一套简单的Parse-server服务的。虽然已近搭建完毕,可以测试使用,但是离正式使用还有一小段距离。

本篇结构:

一、MongoDB的部分问题

二、域名的配置

三、如何保持程序长期在后台运行

、如何快速+正确的使用。





一、MongoDB的部分问题

1.之前没有接触过mongoDB,我当时按照流程搭建完成之后就开始测试使用,隔两天我就会发现我之前存的数据没了?开始我以为是parse-server的问题,又由于是测试使用阶段并没有深究。连着好几次数据都没了,我寻思这么不稳定不能用啊!所以我自己查了下,发现了问题所在。
通过命令进入MongoDB,查询之后我看到了整个里面就一个db,名字为
READ_ME_TO_RECOVER_YOUR_DATA



ssh连接服务器后输入
# mongo
# show dbs //显示自己的数据库



这才是我们自己的数据库
一看这个上面的那个就不是我的库嘛,看着也不像系统库。之前没注意看这个名字,以为就是个系统生成的库,现在注意一下这个名字就感觉不大对劲。
阅读此内容帮助你恢复数据,感觉被黑了。
实际上就是被黑了 ·····

打开之后查看里面内容,果然就有勒索信息···



大致意思:给钱,不给钱就撕票!

2.稍微简单了了解一下MongoDB的使用。我们之前搭建的服务器有两个问题

1.外网可以通过ip+端口号访问我们的数据库。大概这些暂且能称为黑客的人,他们就是通过ip+固定端口号27017全网扫描扫到了就给数据加密发绑票勒索信了。


2.我们的数据库没有设置用户认证。别人知道ip和端口号都不需要破解就能进入我们的数据库了而且操作也不需要授权。

3.解决第一个问题外网可以通过ip+端口号访问我们的数据库。
解决方案就是把我们的数据库改成禁止外网访问,只能通过内网访问。直接阻断外网的端口扫描。
找到我们的配置文件:
# cd /root/parse/mongodb/bin/
# vim mongodb.conf
将bind_ip从0.0.0.0 改为127.0.0.1即可

4.解决第二个问题 给我们的MongoDB添加管理员账户,只有通过管理员登录认证才可以访问我们的数据库
进入mongodb 并创建用户
# mongo
切换到管理员
> use admin
创建一个管理员用户

db.createUser(
    {
        user:"admin321",
        pwd:"admin123",
        roles:[
            {role:"userAdminAnyDatabase",db:"admin"},
            {role:"readWrite",db:"parse"}
        ]
    }
);

创建一个我们使用的parse db授权用户

db.createUser(
    {
        user:"parsedbadmin",
        pwd:"parsedbadmin",
        roles:[
            {role:"readWrite",db:"parse"}
        ]
    }
);

成功如图



ctrl+c退出命令行

同<3>打开mongodb.conf
最后一行添加一行
auth = true 表示需要认证才可以访问数据库
完整的配置选项如下,参数具体含义可以去百度一下

dbpath = /root/parse/mongodb/data/db
logpath = /root/parse/mongodb/data/log/mongodb.log
bind_ip = 127.0.0.1
port = 27017
fork = true
logappend = true
auth = true

# :wq退出保存之后,关闭原先的进程,重新运行起来
如何退出 暴力的就是查进程 然后根据进程pid杀
# netstat -tunlp
# kill -9 15608


重新运行
# mongod --config /root/parse/mongodb/bin/mongodb.conf

可以正常登录授权表示已经设置好了管理员用户

5.重启parse-server
# netstat -tunlp
# kill -9 15608

parse-server --appId appid --masterKey appkey --databaseURI mongodb://parsedbadmin: parsedbadmin@127.0.0.1:27017/parse --serverURL http://服务器ip/parse &


这样基本就能保证我们数据库的安全了。





二、域名的配置

我们在使用的时候一般都会配一个域名方便使用,如何配置域名呢?国内域名需要先备案才可以使用。

1.服务器设置域名解析,参照各个服务器厂商的设置。
阿里云如何设置域名解析

2.安装nginx
# sudo apt install nginx
安装完成后
# nginx -t
如图 说明已经安装成功


3.修改配置
# vim /etc/nginx/nginx.conf

user www-data;
worker_processes auto;
pid /run/nginx.pid;

events {
    worker_connections 1024;
    # multi_accept on;
}

http {

    access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

      server {  
                listen 80 ;
                server_name www.域名;
        location /{
            root /home/web;
            index index.html;
        }
     }

    server {    
                listen 80 ;
                server_name 域名;
        
        location /{
             proxy_pass http://localhost:4040;
        }


        location /parse/ {
                 proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-NginX-Proxy true;
                proxy_pass http://localhost:1337/parse/;
                proxy_ssl_session_reuse off;
                proxy_set_header Host $http_host;
                proxy_redirect off;
        }

        # Pass requests for /dashboard/ to Parse Server instance at localhost:4040
        location /dashboard/ {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-NginX-Proxy true;
            proxy_pass http://localhost:4040/dashboard/;
            proxy_ssl_session_reuse off;
            proxy_set_header Host $http_host;
            proxy_redirect off;
        }
    }
    #include /etc/nginx/conf.d/*.conf;
    #include /etc/nginx/sites-enabled/*;
}

4.启动nginx
# nginx
重启:
# nginx -s reload

5.重新配置 parse-dashboard
vim /etc/parse/parse-dashboard.json

{
    "apps": [{
        "serverURL": "http://你的域名:1337/parse",
        "appId": "appid",
        "masterKey": "appkey",
        "appName": "AppName"
    }],
    "users": [{
        "user": "admin",
        "pass": "admin"
    }]
}

6.重启parse-dashboard
parse-dashboard --config /etc/parse/parse-dashboard.json --allowInsecureHTTP &

7.然后打开你的浏览器直接输入你的域名www.域名.com:4040 即可通过域名登录你的parse-server

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

推荐阅读更多精彩内容