Alexander Bersenev
49bc5d1f3b
get rid of "socket.send() raised exception" messages
2020-02-13 18:14:37 +05:00
Alexander Bersenev
8b26cc843d
catch IncompleteReadError while handling a bad client
2020-02-13 14:22:32 +05:00
Alexander Bersenev
c48cacce83
add statisctics about up/down traffic
2020-02-12 16:28:18 +05:00
Alexander Bersenev
2bb0ef0b1f
simplify initialization and stats
2020-02-12 15:41:05 +05:00
Alexander Bersenev
f5ee5db86f
use asyncio.all_tasks on new pythons
2020-02-11 19:10:43 +05:00
Alexander Bersenev
66ac871a74
remove the hackish logic against replay attacks because it stopped to work with new android clients
...
see https://github.com/alexbers/mtprotoproxy/issues/183
2020-01-16 19:05:18 +05:00
Alexander Bersenev
93ad268d48
add ip logging
2019-11-29 17:30:10 +05:00
Alexander Bersenev
d41b4abf35
MODES option instead of SECURE_ONLY and TLS_ONLY
2019-11-22 02:05:05 +05:00
Alexander Bersenev
7f19b3f78d
more secure defaul settings
2019-11-19 05:22:49 +05:00
Alexander Bersenev
0549fd7200
increase the connection pool size
2019-11-19 05:00:53 +05:00
Alexander Bersenev
fd75ca3cf9
remove loop argument from create server for compatibility with Python 3.8
2019-11-14 02:43:10 +05:00
Alexander Bersenev
522b0cfe75
move more logic to pooled connection
2019-11-13 02:56:05 +05:00
Alexander Bersenev
4a4d449a34
init pooled connections to save one more round trip time
2019-11-13 02:31:51 +05:00
Alexander Bersenev
8c15fc8fe0
use socket from pool in the creation order
2019-11-12 04:31:47 +05:00
Alexander Bersenev
e436792992
introduce connection pool to reduce pings
2019-11-12 03:53:10 +05:00
K900
07759f67cb
Fix running on Python 3.8 ( #161 )
...
3.8 removes the asyncio.streams re-export of `IncompleteReadError`, so just access it directly from `asyncio`, like everywhere else in the code already does.
2019-11-11 16:04:14 +05:00
Alexander Bersenev
f525cc9611
more strict validation of tls domain
2019-10-30 22:27:46 +05:00
dasmfm
c010543889
Prefix for Prometheus metrics ( #151 )
...
Added default prefix for Prometheus metrics.
2019-10-09 14:35:02 +05:00
Alexander Bersenev
027ee2713b
use tls-only mode in the default config
2019-10-08 14:44:09 +05:00
Alexander Bersenev
3c4c92cdb2
adjust stats duration bucket sizes
2019-10-08 14:42:03 +05:00
Alexander Bersenev
3ef826cd6b
more logical name for connection duration
2019-09-21 23:55:53 +05:00
Alexander Bersenev
9ec1e543bd
expose the length of connections as metrics
2019-09-21 23:17:00 +05:00
Alexander Bersenev
fae04ed3c7
do not export proxy links by default
2019-09-20 18:57:37 +05:00
Alexander Bersenev
25685f370c
reword the link desc
2019-09-20 18:10:37 +05:00
Alexander Bersenev
1feb8e5fc7
export proxy links as metrics
2019-09-20 17:52:30 +05:00
Alexander Bersenev
5e488203a2
check for socks mode before importing uvloop
2019-09-20 17:26:30 +05:00
Alexander Bersenev
94fd98a1fb
correct spelling
2019-09-20 17:19:33 +05:00
Alexander Bersenev
4c5b0803fa
add upstream socks proxy consistency checks
2019-09-20 17:17:16 +05:00
Alexander Bersenev
8fa8aabc8e
ability to specify socks user and pass
2019-09-20 16:13:06 +05:00
Alexander Bersenev
f2fbaa923b
refactor upstream proxy handling
2019-09-20 16:06:59 +05:00
Alexander Bersenev
79eaabdd23
move socks handling in the config parsing
2019-09-20 15:40:33 +05:00
Alexander Bersenev
23c7b0d53b
make the socks module optional
2019-09-20 15:38:18 +05:00
pasha-zzz
516600a32d
Add support for upstream SOCKS5 proxy ( #143 )
2019-09-20 15:28:29 +05:00
Alexander Bersenev
5fcd1c0158
change metrics pushes to pulls
2019-09-19 02:27:57 +05:00
Alexander Bersenev
dc1223fd90
add hanshake_timeout metric
2019-09-18 23:22:06 +05:00
Alexander Bersenev
0d52ae0bc7
rename metrics, add connects_all metric
2019-09-18 23:13:32 +05:00
Alexander Bersenev
2b1469985d
add an ability to export metrics to prometheus
2019-09-18 19:44:19 +05:00
Alexander Bersenev
4784491800
use only half of the digest as a key for used digest
2019-09-13 17:20:32 +05:00
Alexander Bersenev
7a2c6b9825
cast client port to int
2019-09-13 01:19:19 +05:00
Alexander Bersenev
37307a98fb
print replay attackers summary
2019-09-08 14:28:46 +05:00
Alexander Bersenev
02b39168c3
print the possible replay-attackers summary instead of every time
2019-09-08 14:12:06 +05:00
Alexander Bersenev
163e7b7cce
print a message about getting the cert
2019-09-08 03:12:19 +05:00
Alexander Bersenev
1ed13d9efa
get rid from annoying time skew messages, print summary instead
2019-09-08 02:01:23 +05:00
Alexander Bersenev
51c8d68271
disable the first bad packet heuristics if the tls-only mode activated, it has time-based protection instead
2019-09-08 01:09:44 +05:00
Alexander Bersenev
50cd74051f
add a message if uvloop is found
2019-08-30 16:05:08 +05:00
Alexander Bersenev
1d826866d1
print time skew message as one line
2019-08-26 17:00:34 +05:00
Alexander Bersenev
ff6b826e13
do not output canceled errors to get rid from scarry traceback on the proxy termination
2019-08-26 16:51:48 +05:00
Alexander Bersenev
3315ac1df6
add one more param into the undocummented mode of launch
2019-08-26 16:07:35 +05:00
Alexander Bersenev
d34a15bca3
nicer exception printing
2019-08-23 23:55:26 +05:00
Alexander Bersenev
56bfab51d5
necer exception printing
2019-08-23 23:51:53 +05:00