Replaced Express-Brute store from Mongo to Mongoose
This commit is contained in:
parent
94fe4bbf14
commit
2cf8f2c247
@ -12,7 +12,6 @@ env:
|
|||||||
global:
|
global:
|
||||||
- CXX=g++-4.8
|
- CXX=g++-4.8
|
||||||
- secure: VCgscCCKhvHu0tW8e3jo6wydckE6jDkEfC2Zd5aSZytYAex05qahU45cmksqMIT1uBCcC4CKRK4caoKac/+818EyKBTV+vAL74cMMc8NeLNVY2m50+ohu8GYu+ByIffttK7cnXN7xIzyuK4csI7qz84jxLW0KYgYQ+6SPbUG3Hy6gr0P0CztNmAFfyhTam4OKSIiXyvQZW0fZoSruOpUYS5pxvCBi4AxpRY8+6IxCL8xYqF49P0l28nn0C/NYUklwag6l4JF32PrcLAU5S+NIXXgJX499cZO4C2m2GljJeolbvGue3ZEtadv5NkmQuFQ1WGb5aURHPkll0hXsWKxT0bH9P1a4Gt1h/J885acWG4U6QZA1Zds/Z4ymNeLA0MzzoAaDK1q8sRglhDJnZYb4Zm5jy7ZA3vFwb+zcGaOT//pCVpcsZINRnd0Qu9LC5NKPrfmyFAAMAXDdo78BEnwryUviWP5976JZmQAfDIWvmGGTs5i1yjiTRi+NVgH0YpfxtI9MTEJo++r5/zNH/jewxj1D8esaamphp6mQvxvpl388veQDw3REUZQ49muzrdK2YYmVRkzLfH2uMsHInN3WqEl3/mTpH76u0nlxMF6HlrVdgB2UNPjlXbSooWXLfdAw98NpCZ7BAFcCcT8Oa9cYw+40rJrdfem5J2EimG5ltw=
|
- secure: VCgscCCKhvHu0tW8e3jo6wydckE6jDkEfC2Zd5aSZytYAex05qahU45cmksqMIT1uBCcC4CKRK4caoKac/+818EyKBTV+vAL74cMMc8NeLNVY2m50+ohu8GYu+ByIffttK7cnXN7xIzyuK4csI7qz84jxLW0KYgYQ+6SPbUG3Hy6gr0P0CztNmAFfyhTam4OKSIiXyvQZW0fZoSruOpUYS5pxvCBi4AxpRY8+6IxCL8xYqF49P0l28nn0C/NYUklwag6l4JF32PrcLAU5S+NIXXgJX499cZO4C2m2GljJeolbvGue3ZEtadv5NkmQuFQ1WGb5aURHPkll0hXsWKxT0bH9P1a4Gt1h/J885acWG4U6QZA1Zds/Z4ymNeLA0MzzoAaDK1q8sRglhDJnZYb4Zm5jy7ZA3vFwb+zcGaOT//pCVpcsZINRnd0Qu9LC5NKPrfmyFAAMAXDdo78BEnwryUviWP5976JZmQAfDIWvmGGTs5i1yjiTRi+NVgH0YpfxtI9MTEJo++r5/zNH/jewxj1D8esaamphp6mQvxvpl388veQDw3REUZQ49muzrdK2YYmVRkzLfH2uMsHInN3WqEl3/mTpH76u0nlxMF6HlrVdgB2UNPjlXbSooWXLfdAw98NpCZ7BAFcCcT8Oa9cYw+40rJrdfem5J2EimG5ltw=
|
||||||
- secure: msnBRkjis9v8Orlkubhla/HaniYPYsPgCzFIsS/BJW9HiiUdYm89M2YbNcJvo0s0otG/ta8r+oPzbd2jW7gndW8iUTrgwtMzBPSm674qXMAocRQKCHZa8BZGFMML5CYErUZm6ZDN9SIXq+s//igKnU+QLQmYUhsIeOFS+tIidGCwExu0ppXqUViuWVZpK37c/6/9SxRB0RMUwOaBiRwAThb8VM+ZfnYxxwMSfWT01zySWw2QAVKKLubeuXuOI8ci6OY+FcxcS0HB6XFaUH5YFrTw6KLqF/gxx2HgS5LI+6hn5ko5KQu2V5+ZS4VFRkwnjzSxNIdtEZnqd0qj+qVnEO7R1GnluKfqgTSb2GuzKhaIjUO+dB0gVqwY31wfNAwjCLNMY98ZMv9nJbv9l5iTJqMjCLPvdAmUuFJBCXoX98jDMiSfN3z+4VFVJapt70BENzP51gtj2qf3zsLfYhTQxwozuZvxt/koP1+HfdJhskBG734qioc49VO5Sqsj8OwkbVyl55mHCkkAXFyxAbO8eoSmK9ZhhZ7AbypCYVvmsMbjDRlmHCxXiG9DpVWiajeYKBeK+KEzQ2nKDrz5POHHY7PHXaZsNDMoIuigPdOr2AUVPMjsr74KJL49HowR+UF0zq4PDKHxp9wXlt50JPhfsvm7m//8/1XefVpJWUco0vM=
|
|
||||||
- secure: afxMIIz9YeKKBc0WdafTrQorzsIZSEM8wqUB3ffrC41s+FEXl4VGIl8ZxKWZ/k2W+y7qCWSVfS4vMHv6CYy++Xq87NUczWPqFq99QXNHYpXWD0JK3clLY1DADuRDYeVA/kGkjH3MAAVd5s4I8TK7cmLwZDiwT7ybiYGLnAeQPR5IK1p/WwULEE+UTvSXudKfQIpi8K/EjbjLcB+EcDFPngAvX0LW6qXn0E+Z9NG6aru7/QhCTkHTYIc6k6r/bzWKhRAp+XaA184GxsyxNvIWTiBpeVK8XwDORkotobvgvDoz8uQHMjldtNFg5BL386WjNSh0Ljg242GQVTpbh0ju9F4XC7GN11tRDHwOBbSLa+X/sBomyONgBAve6roqtiQgZ3T92SycyjW06vhG7akC+yAKnAKVL+JdWWvg4qPhppKRAa57/5Se9GlAthSXvhfGvkaKtA4IUq9Jr7FksF4f+tCkSfNeJBYnlV+c/oBY7ZZ9gMUslXuDtv8Dbgp2aa4ELeA9R0U+5Ac42JzzbfojwOaLpEvFYs2cdZybOPlUq/EO/rx2Oxi9Xk2oPL4UW9xV5ZlwYmCw/rXpzSWo4dl4i0tEPN+5ZPtgQGz5pIBeI0LGGvEhCya/Tg+Xc9Bd7/0Ox7cLgNk0vrTEVjW+Z/b3XMhVwVlwmTuVM5wylzaZRcc=
|
- secure: afxMIIz9YeKKBc0WdafTrQorzsIZSEM8wqUB3ffrC41s+FEXl4VGIl8ZxKWZ/k2W+y7qCWSVfS4vMHv6CYy++Xq87NUczWPqFq99QXNHYpXWD0JK3clLY1DADuRDYeVA/kGkjH3MAAVd5s4I8TK7cmLwZDiwT7ybiYGLnAeQPR5IK1p/WwULEE+UTvSXudKfQIpi8K/EjbjLcB+EcDFPngAvX0LW6qXn0E+Z9NG6aru7/QhCTkHTYIc6k6r/bzWKhRAp+XaA184GxsyxNvIWTiBpeVK8XwDORkotobvgvDoz8uQHMjldtNFg5BL386WjNSh0Ljg242GQVTpbh0ju9F4XC7GN11tRDHwOBbSLa+X/sBomyONgBAve6roqtiQgZ3T92SycyjW06vhG7akC+yAKnAKVL+JdWWvg4qPhppKRAa57/5Se9GlAthSXvhfGvkaKtA4IUq9Jr7FksF4f+tCkSfNeJBYnlV+c/oBY7ZZ9gMUslXuDtv8Dbgp2aa4ELeA9R0U+5Ac42JzzbfojwOaLpEvFYs2cdZybOPlUq/EO/rx2Oxi9Xk2oPL4UW9xV5ZlwYmCw/rXpzSWo4dl4i0tEPN+5ZPtgQGz5pIBeI0LGGvEhCya/Tg+Xc9Bd7/0Ox7cLgNk0vrTEVjW+Z/b3XMhVwVlwmTuVM5wylzaZRcc=
|
||||||
cache:
|
cache:
|
||||||
directories:
|
directories:
|
||||||
|
@ -2,17 +2,13 @@ var express = require('express');
|
|||||||
var router = express.Router();
|
var router = express.Router();
|
||||||
var passport = require('passport');
|
var passport = require('passport');
|
||||||
var ExpressBrute = require('express-brute');
|
var ExpressBrute = require('express-brute');
|
||||||
var ExpressBruteMongoStore = require('express-brute-mongo');
|
var ExpressBruteMongooseStore = require('express-brute-mongoose');
|
||||||
var moment = require('moment');
|
var moment = require('moment');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Setup Express-Brute
|
* Setup Express-Brute
|
||||||
*/
|
*/
|
||||||
var EBstore = new ExpressBruteMongoStore((ready) => {
|
var EBstore = new ExpressBruteMongooseStore(db.Bruteforce);
|
||||||
db.onReady.then(() => {
|
|
||||||
ready(db.connection.collection('bruteforce-store'));
|
|
||||||
});
|
|
||||||
});
|
|
||||||
var bruteforce = new ExpressBrute(EBstore, {
|
var bruteforce = new ExpressBrute(EBstore, {
|
||||||
freeRetries: 5,
|
freeRetries: 5,
|
||||||
minWait: 60 * 1000,
|
minWait: 60 * 1000,
|
||||||
|
20
models/bruteforce.js
Normal file
20
models/bruteforce.js
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
const modb = require('mongoose');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* BruteForce schema
|
||||||
|
*
|
||||||
|
* @type {<Mongoose.Schema>}
|
||||||
|
*/
|
||||||
|
var bruteForceSchema = modb.Schema({
|
||||||
|
_id: { type: String, index: 1 },
|
||||||
|
data: {
|
||||||
|
count: Number,
|
||||||
|
lastRequest: Date,
|
||||||
|
firstRequest: Date
|
||||||
|
},
|
||||||
|
expires: { type: Date, index: { expires: '1d' } }
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = modb.model('Bruteforce', bruteForceSchema);
|
@ -46,7 +46,7 @@
|
|||||||
"cron": "^1.1.1",
|
"cron": "^1.1.1",
|
||||||
"express": "^4.14.0",
|
"express": "^4.14.0",
|
||||||
"express-brute": "^1.0.0",
|
"express-brute": "^1.0.0",
|
||||||
"express-brute-mongo": "^0.1.0",
|
"express-brute-mongoose": "0.0.6",
|
||||||
"express-session": "^1.14.1",
|
"express-session": "^1.14.1",
|
||||||
"farmhash": "^1.2.1",
|
"farmhash": "^1.2.1",
|
||||||
"file-type": "^3.8.0",
|
"file-type": "^3.8.0",
|
||||||
|
Loading…
Reference in New Issue
Block a user