Skip to content

Commit

Permalink
1.391.155
Browse files Browse the repository at this point in the history
  • Loading branch information
roeea committed Jun 23, 2023
1 parent ecfa519 commit f3ed57c
Show file tree
Hide file tree
Showing 22 changed files with 155 additions and 35 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
Proxy manager - Change Log

## 1.391.155 Stable
- :star: Checking traffic for malware option on cloud lpm agents

## 1.390.445 Stable
- :bug: fix unable update port to number less then UI port
- :bug: fix wrong responce for CONNECT request errors
Expand Down
5 changes: 4 additions & 1 deletion README-zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
- <a href="https://nodejs.org/en/download/">Node.js</a> 6+版

### Windows
下载 <a href="https://lum-lpm.com/static/lpm/luminati-proxy-manager-v1.390.445-setup.exe">代理管理安装器</a>.
下载 <a href="https://lum-lpm.com/static/lpm/luminati-proxy-manager-v1.391.155-setup.exe">代理管理安装器</a>.

### Linux/MacOS
- 安装 Node.js 10.15.3版 (最好用x
Expand Down Expand Up @@ -100,6 +100,8 @@ Options:
--ssl Enable SSL analyzing
[boolean] [default: false]
--tls_lib SSL library [string] [default: "open_ssl"]
--av_check Enable antivirus check
[boolean] [default: false]
--iface Interface or IP to listen on [string]
--customer Customer name [string]
--zone Zone name [string] [default: "static"]
Expand Down Expand Up @@ -245,6 +247,7 @@ Options:
--proxy_country [default: ""]
--resolve_proxies_interval [default: 10000]
--info [default: false]
--av_server [default: false]
--cn [default: false]
--api_body_limit [default: "2mb"]
--api_domain_fallback [default: "l-lpm.com"]
Expand Down
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ Please report issues or bugs to your account manager or from our [help center](h
## Installation

### Windows
Download the [Proxy Manager installer](https://github.com/luminati-io/luminati-proxy/releases/download/v1.390.445/luminati-proxy-manager-v1.390.445-setup.exe)
Download the [Proxy Manager installer](https://github.com/luminati-io/luminati-proxy/releases/download/v1.391.155/luminati-proxy-manager-v1.391.155-setup.exe)

### Linux/MacOS - Install script
- Run the setup script to install
Expand Down Expand Up @@ -152,6 +152,8 @@ Options:
--ssl Enable SSL analyzing
[boolean] [default: false]
--tls_lib SSL library [string] [default: "open_ssl"]
--av_check Enable antivirus check
[boolean] [default: false]
--iface Interface or IP to listen on [string]
--customer Customer name [string]
--zone Zone name [string] [default: "static"]
Expand Down Expand Up @@ -297,6 +299,7 @@ Options:
--proxy_country [default: ""]
--resolve_proxies_interval [default: 10000]
--info [default: false]
--av_server [default: false]
--cn [default: false]
--api_body_limit [default: "2mb"]
--api_domain_fallback [default: "l-lpm.com"]
Expand Down
2 changes: 1 addition & 1 deletion bin/lpm_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ if [ $(id -u) = 0 ]; then
IS_ROOT=1
fi
LUM=0
VERSION="1.390.445"
VERSION="1.391.155"
if [ -f "/usr/local/hola/zon_config.sh" ]; then
LUM=1
fi
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57448,6 +57448,11 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_
tooltip: "Choose a specific SSL library for sending HTTPS\n requests. It affects the SSL fingerprint seen by the target\n site. OpenSSL can be detected as suspicious traffic because\n no browser uses it. Use BoringSSL if you need to keep using\n SSL analyzing and you are getting blocked",
ext: true
},
av_check: {
label: 'Antivirus check',
tooltip: "Checking traffic for malware",
ext: true
},
proxy_connection_type: {
label: 'Connection to Super Proxy',
tooltip: "Connection type between Proxy Manager and Super\n Proxy"
Expand Down Expand Up @@ -124824,7 +124829,9 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_
_this.set_field('multiply', 1);
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "ssl_changed", function (val) {
return !val && _this.set_field('tls_lib', 'open_ssl');
if (val) return;
_this.set_field('tls_lib', 'open_ssl');
_this.set_field('av_check', false);
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "open_static_modal", function () {
return (0, _jquery["default"])('#allocated_ips').modal('show');
Expand Down Expand Up @@ -124887,7 +124894,9 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_
value: function render() {
var _this3 = this;
if (!this.state.form || !this.state.proxy || !this.state.settings) return null;
var zagent = this.state.settings.zagent;
var _this$state$settings = this.state.settings,
zagent = _this$state$settings.zagent,
av_server = _this$state$settings.av_server;
// XXX krzysztof: cleanup type (index.js rotation.js general.js)
var curr_plan = this.get_curr_plan();
var is_render_plan = curr_plan.type == 'unblocker' || !!curr_plan.serp;
Expand Down Expand Up @@ -124970,6 +124979,11 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_
disabled: !zagent,
note: !zagent && /*#__PURE__*/_react["default"].createElement(Limit_zagent_note, null),
data: tls_lib_opt
}), form.ssl && av_server && /*#__PURE__*/_react["default"].createElement(_common2.Config, {
type: "yes_no",
id: "av_check",
note: !zagent && /*#__PURE__*/_react["default"].createElement(Limit_zagent_note, null),
disabled: !zagent
}), /*#__PURE__*/_react["default"].createElement(_common2.Config, {
type: "select",
data: route_err_opt,
Expand Down Expand Up @@ -128313,7 +128327,7 @@ module.exports = JSON.parse("{\"version\":\"2020a\",\"zones\":[\"Africa/Abidjan|
/* 1002 */
/***/ (function(module) {

module.exports = JSON.parse("[{\"label\":\"Chrome 115 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36\"},{\"label\":\"Chrome 87 Windows 7\",\"value\":\"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36\"},{\"label\":\"Chrome 114 Android 10\",\"value\":\"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36\"},{\"label\":\"Chrome 114 OSX 10.15.7\",\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Chrome 114 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Chrome 114 iOS 17.0\",\"value\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/114.0.5735.99 Mobile/15E148 Safari/604.1\"},{\"label\":\"Chrome 114 Chromium OS 14541.0.0\",\"value\":\"Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Opera 99 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 OPR/99.0.0.0\"},{\"label\":\"Opera 75 Android 13\",\"value\":\"Mozilla/5.0 (Linux; Android 13; SM-G990E) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.135 Mobile Safari/537.36 OPR/75.4.3978.72990\"},{\"label\":\"Opera 99 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 OPR/99.0.0.0\"},{\"label\":\"Firefox 110 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:110.0) Gecko/20100101 Firefox/110.0\"},{\"label\":\"Safari 16 OSX 10.15.7\",\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4 Safari/605.1.15\"},{\"label\":\"Mobile Safari 16 iOS 16.6\",\"value\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1\"},{\"label\":\"Edge 114 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43\"},{\"label\":\"Edge 114 OSX 10.15.7\",\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.37\"},{\"label\":\"Whale 3 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Whale/3.21.192.15 Safari/537.36\"},{\"label\":\"Falkon 3 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Falkon/3.1.0 Chrome/83.0.4103.122 Safari/537.36\"},{\"label\":\"Yandex 23 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 YaBrowser/23.5.1.714 Yowser/2.5 Safari/537.36\"},{\"label\":\"Yandex 23 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 YaBrowser/23.3.3.764 Yowser/2.5 Safari/537.36\"},{\"label\":\"GSA 267 iOS 16.5\",\"value\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 16_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) GSA/267.0.537056344 Mobile/15E148 Safari/604.1\"}]");
module.exports = JSON.parse("[{\"label\":\"Chrome 114 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Chrome 87 Windows 7\",\"value\":\"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36\"},{\"label\":\"Chrome 114 Android 10\",\"value\":\"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36\"},{\"label\":\"Chrome 114 OSX 10.15.7\",\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Chrome 114 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Chrome 114 iOS 16.6\",\"value\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/114.0.5735.99 Mobile/15E148 Safari/604.1\"},{\"label\":\"Chrome 114 Chromium OS 14541.0.0\",\"value\":\"Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36\"},{\"label\":\"Opera 99 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 OPR/99.0.0.0\"},{\"label\":\"Opera 75 Android 9\",\"value\":\"Mozilla/5.0 (Linux; Android 9; ONEPLUS A3003) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.135 Mobile Safari/537.36 OPR/75.4.3978.72990\"},{\"label\":\"Opera 99 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 OPR/99.0.0.0\"},{\"label\":\"Firefox 109 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0\"},{\"label\":\"Safari 16 OSX 10.15.7\",\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Safari/605.1.15\"},{\"label\":\"Mobile Safari 16 iOS 16.5\",\"value\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 16_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.5 Mobile/15E148 Safari/604.1\"},{\"label\":\"Edge 114 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.51\"},{\"label\":\"Edge 114 OSX 10.15.7\",\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.51\"},{\"label\":\"Whale 3 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Whale/3.21.192.15 Safari/537.36\"},{\"label\":\"Falkon 3 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Falkon/3.1.0 Chrome/83.0.4103.122 Safari/537.36\"},{\"label\":\"Yandex 23 Windows 10\",\"value\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 YaBrowser/23.5.1.714 Yowser/2.5 Safari/537.36\"},{\"label\":\"Yandex 23 Linux\",\"value\":\"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 YaBrowser/23.5.1.750 Yowser/2.5 Safari/537.36\"},{\"label\":\"GSA 267 iOS 16.5\",\"value\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 16_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) GSA/267.0.537056344 Mobile/15E148 Safari/604.1\"}]");

/***/ }),
/* 1003 */
Expand Down
2 changes: 1 addition & 1 deletion bin/pub/index.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<!doctype html><html><head><meta charset="utf-8"><title>Proxy Manager</title><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><base href="/"><link rel="shortcut icon" href="/favicon.ico"><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.0/css/all.css" integrity="sha384-Mmxa0mLqhmOeaE8vgOSbKacftZcsNYDjQzuCOm6D02luYSzBG8vpaOykv9lFQ51Y" crossorigin="anonymous"></head><body><div id="react_root"></div><div id="notif_react_modal"></div><div id="del_modal"></div><script src="/184114fda7188f14a2d0.runtime.js"></script><script src="/6229cea1d65262c2de5c.app.js"></script><script src="/51f2f7d96de8ad7b9770.vendor.js"></script></body></html>
<!doctype html><html><head><meta charset="utf-8"><title>Proxy Manager</title><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><base href="/"><link rel="shortcut icon" href="/favicon.ico"><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.0/css/all.css" integrity="sha384-Mmxa0mLqhmOeaE8vgOSbKacftZcsNYDjQzuCOm6D02luYSzBG8vpaOykv9lFQ51Y" crossorigin="anonymous"></head><body><div id="react_root"></div><div id="notif_react_modal"></div><div id="del_modal"></div><script src="/184114fda7188f14a2d0.runtime.js"></script><script src="/7fa460a8b95add180df3.app.js"></script><script src="/51f2f7d96de8ad7b9770.vendor.js"></script></body></html>
2 changes: 1 addition & 1 deletion extensions/timezone/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,5 @@
"*://*/*",
"webNavigation"
],
"version": "1.390.445"
"version": "1.391.155"
}
2 changes: 1 addition & 1 deletion extensions/webrtc/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@
"permissions": [
"privacy"
],
"version": "1.390.445"
"version": "1.391.155"
}
1 change: 1 addition & 0 deletions lib/cluster_mgr.js
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ class Cluster_mgr {
ca: this.mgr.get_ssl_ca(),
keys,
zagent: this.mgr.argv.zagent,
av_server: this.mgr.argv.av_server,
no_usage_stats: this.mgr.argv.no_usage_stats,
extra_ssl_ips: [...new Set([
...this.mgr._defaults.extra_ssl_ips||[],
Expand Down
14 changes: 14 additions & 0 deletions lib/manager.js
Original file line number Diff line number Diff line change
Expand Up @@ -180,14 +180,18 @@ function Manager(argv, run_config={}){
logger.system('Updated server configuration');
let zone_auth_wl_diff = [];
let super_proxy_ports_diff = [];
let av_server_url_diff = !this.server_conf;
let new_super_proxy_ports = this.get_super_proxy_ports(
server_conf);
let new_av_server_url = this.get_av_server_url(server_conf);
if (this.server_conf)
{
zone_auth_wl_diff = _.xor(server_conf.zone_auth_type_whitelist,
this.server_conf.zone_auth_type_whitelist);
super_proxy_ports_diff = _.xor(new_super_proxy_ports,
this.get_super_proxy_ports(this.server_conf));
av_server_url_diff = this.get_av_server_url(this.server_conf)!=
new_av_server_url;
}
this.server_conf = server_conf;
let port = _this.check_proxy_port(server_conf.cloud);
Expand All @@ -197,6 +201,8 @@ function Manager(argv, run_config={}){
_this.update_zone_auth_wl();
if (super_proxy_ports_diff.length)
_this.update_opt({super_proxy_ports: new_super_proxy_ports});
if (av_server_url_diff)
_this.update_opt({av_server_url: new_av_server_url});
});
this.lpm_f.on('i18n_update_available', ()=>
this.lang_cache.delete());
Expand Down Expand Up @@ -668,6 +674,12 @@ E.prototype.get_super_proxy_ports = function(server_conf){
}, []);
};

E.prototype.get_av_server_url = function(server_conf){
if (!server_conf || !server_conf.cloud || !server_conf.cloud.av_server_url)
return '127.0.0.1:1343';
return server_conf.cloud.av_server_url;
};

E.prototype.complete_proxy_config = function(conf){
const c = assign({}, E.default, this._defaults, conf);
const zone = this.zones_mgr.get_obj(c.zone);
Expand Down Expand Up @@ -821,6 +833,7 @@ E.prototype.update_proxy_fields = function(proxy){
conf.mobile = this.zones_mgr.is_mobile(zone_name);
conf.unblock = this.zones_mgr.is_unblocker(zone_name);
conf.super_proxy_ports = this.get_super_proxy_ports(this.server_conf);
conf.av_server_url = this.get_av_server_url(this.server_conf);
return conf;
};

Expand Down Expand Up @@ -1973,6 +1986,7 @@ E.prototype.get_settings = function(){
pending_ips: [...this.pending_ips],
pending_www_ips: [...this.pending_www_ips],
zagent: this.argv.zagent,
av_server: this.argv.av_server,
reseller: this.is_reseller(),
sync_config: this._defaults.sync_config,
ask_sync_config: this._defaults.ask_sync_config,
Expand Down
14 changes: 14 additions & 0 deletions lib/router.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,20 @@ class Router {
req.ctx.response.status_message = 'NULL';
return req.ctx.response;
}
send_malware_detected_response(req, res, malware={}){
const status_code = 451, status_message = `Malware detected`;
const headers = {
'x-threat-type': malware.threat_type||'unknown',
'x-threat-name': malware.threat_name||'unknown',
};
write_http_reply(res, {statusCode: status_code,
statusMessage: status_message}, headers, this.opt);
res.end();
req.ctx.response.headers = headers;
req.ctx.response.status_code = status_code;
req.ctx.response.status_message = status_message;
return req.ctx.response;
}
send_cached(req, res, cached){
const {res_data, headers} = cached;
write_http_reply(res, {statusCode: 200, statusMessage: 'OK'}, headers,
Expand Down
Loading

0 comments on commit f3ed57c

Please sign in to comment.