mirror of
				https://github.com/Justuser3310/jetwork.git
				synced 2025-10-31 10:31:07 +00:00 
			
		
		
		
	Compare commits
	
		
			No commits in common. "e754739219dce50840df5844dde7e654280f2f48" and "ccb88adcb4a559e29a89427d5dfed0561b081334" have entirely different histories.
		
	
	
		
			e754739219
			...
			ccb88adcb4
		
	
		
							
								
								
									
										
											BIN
										
									
								
								__pycache__/db.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/db.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								__pycache__/domain_check.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/domain_check.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								__pycache__/network.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/network.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								__pycache__/proxy.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/proxy.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								__pycache__/status.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/status.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								__pycache__/updater.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/updater.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								__pycache__/verify.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__pycache__/verify.cpython-311.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -7,34 +7,13 @@ | |||||||
| .main { | .main { | ||||||
| 	display: grid; | 	display: grid; | ||||||
| 	grid-template-areas: | 	grid-template-areas: | ||||||
| 		"off_btn   search" | 		"our_port search" | ||||||
| 		"our_port  sites" | 		"servers  sites" | ||||||
| 		"servers  sites"; | 		"servers  sites"; | ||||||
| 	grid-template-columns: 1fr 2fr; | 	grid-template-columns: 1fr 2fr; | ||||||
| 	grid-template-rows: auto auto; | 	grid-template-rows: auto auto; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| .off_btn { |  | ||||||
| 	grid-area: off_btn; |  | ||||||
| 	background: #ff5a5a; |  | ||||||
| 	align-content: center; |  | ||||||
| 	border-radius: 0.4rem; |  | ||||||
| 	padding-left: 1rem; |  | ||||||
| 	padding-right: 1rem; |  | ||||||
| 	border-style: hidden; |  | ||||||
| 	font-size: 1rem; |  | ||||||
| 	width: calc(100% - 0.5rem); |  | ||||||
| 	height: 100%; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .off_btn:active { |  | ||||||
|   background-color: #c85000; |  | ||||||
|   box-shadow: rgba(0, 0, 0, .06) 0 2px 4px; |  | ||||||
|   transform: scale(.96); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| .our_port { | .our_port { | ||||||
| 	grid-area: our_port; | 	grid-area: our_port; | ||||||
| 	background: #53f453; | 	background: #53f453; | ||||||
| @ -43,7 +22,6 @@ | |||||||
| 	padding-left: 1rem; | 	padding-left: 1rem; | ||||||
| 	padding-right: 1rem; | 	padding-right: 1rem; | ||||||
| 	margin-right: 0.5rem; | 	margin-right: 0.5rem; | ||||||
| 	margin-top: 0.4rem; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .servers { | .servers { | ||||||
|  | |||||||
							
								
								
									
										5
									
								
								config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								config.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | |||||||
|  | { | ||||||
|  |   "ports": [ | ||||||
|  |     25128 | ||||||
|  |   ] | ||||||
|  | } | ||||||
							
								
								
									
										52
									
								
								docs/js.md
									
									
									
									
									
								
							
							
						
						
									
										52
									
								
								docs/js.md
									
									
									
									
									
								
							| @ -1,52 +0,0 @@ | |||||||
| ## Содержание |  | ||||||
| 1. Почему JS это плохо (для безопасности) |  | ||||||
| 2. Как отключить JS на jetwork.del.pw |  | ||||||
| 3. Как отключить JS на локальном клиенте |  | ||||||
| 
 |  | ||||||
| <br> |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| ### 1. Почему JS это плохо |  | ||||||
| Через JS можно узнать ваш айпи и отслеживать вас между сайтами. <br> |  | ||||||
| Или например узнать примерную локацию, что иногда может помочь вас сдеанонимизировать. <br> |  | ||||||
| Если это вас не волнует - можете дальше не читать. <br> |  | ||||||
| 
 |  | ||||||
| ### 2. Как отключить JS на jetwork.del.pw |  | ||||||
| Заходим на jetwork.del.pw <br> |  | ||||||
|  |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| Заходим на js-check.jet и видим что у нас всё плохо <br> |  | ||||||
|  |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| Устанавливаем расширение Ublock Origin. (Origin!!!) <br> |  | ||||||
| Делается это как и со всеми расширениями. |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| Заходим в доп.найстройки Ublock Origin <br> |  | ||||||
|  |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| Ставим галочку в вкладке `Settings` напротив `I am advanced user` <br> |  | ||||||
|  |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| Выключаем скрипты через расширение как показано, прямоугольник загорится красным <br> |  | ||||||
|  |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| Перезагружаем страницу и... <br> |  | ||||||
|  |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| ### 3. Как отключить JS на локальном клиенте |  | ||||||
| Заходим на `127.0.0.1:5555` <br> |  | ||||||
|  |  | ||||||
| <br> |  | ||||||
| 
 |  | ||||||
| Дальше по аналогии как в пункте 2. |  | ||||||
| > Есть вопросы - в чат ( https://t.me/justuser31_chat ) |  | ||||||
| 
 |  | ||||||
| @ -7,7 +7,7 @@ def domain_ok(domain): | |||||||
| 		if domain.split(".")[1] in domains: | 		if domain.split(".")[1] in domains: | ||||||
| 			# ../some => some | 			# ../some => some | ||||||
| 			# Защита от проверки папок выше, чем нужно и др. | 			# Защита от проверки папок выше, чем нужно и др. | ||||||
| 			regex = compile('[^a-z.-]') | 			regex = compile('[^a-zA-Zа-яА-ЯЁё.-]') | ||||||
| 			c_domain = regex.sub('', domain) | 			c_domain = regex.sub('', domain) | ||||||
| 			if domain == c_domain: | 			if domain == c_domain: | ||||||
| 				return domain | 				return domain | ||||||
|  | |||||||
							
								
								
									
										31
									
								
								interface.py
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								interface.py
									
									
									
									
									
								
							| @ -2,20 +2,14 @@ from dash import Dash, dcc, html, Input, Output, callback | |||||||
| app = Dash(__name__, title='Jetwork', update_title=None) | app = Dash(__name__, title='Jetwork', update_title=None) | ||||||
| 
 | 
 | ||||||
| from db import * | from db import * | ||||||
| from status import * |  | ||||||
| 
 |  | ||||||
| from os import walk | from os import walk | ||||||
| from os import system as sys |  | ||||||
| from platform import system |  | ||||||
| from threading import Thread |  | ||||||
| 
 | 
 | ||||||
| app.layout = html.Div([ html.Div([ | app.layout = html.Div([ html.Div([ | ||||||
| 
 | 
 | ||||||
| dcc.ConfirmDialog(id='shut_mess', message='Клиент выключен!'), |  | ||||||
| html.Button("Выключить клиент", className='off_btn', n_clicks=0, id='off_btn'), |  | ||||||
| html.Div([], id='our_port', className='our_port'), | html.Div([], id='our_port', className='our_port'), | ||||||
| html.Div([], id='servers', className='servers'), | html.Div([], id='servers', className='servers'), | ||||||
| html.Div([], id='sites', className='sites'), | html.Div([], id='sites', className='sites'), | ||||||
|  | #dcc.Input(className='search', type='search', list=[1,2,3]), | ||||||
| dcc.Dropdown(options=[], id='search', placeholder='Поиск...'), | dcc.Dropdown(options=[], id='search', placeholder='Поиск...'), | ||||||
| 
 | 
 | ||||||
| dcc.Interval(id='interval-component', interval=1*1000, n_intervals=0) | dcc.Interval(id='interval-component', interval=1*1000, n_intervals=0) | ||||||
| @ -23,29 +17,6 @@ dcc.Interval(id='interval-component', interval=1*1000, n_intervals=0) | |||||||
| ], className='main')], className='content') | ], className='main')], className='content') | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| # Функция выключения |  | ||||||
| def shutdown(): |  | ||||||
| 	# Задаём код остановки |  | ||||||
| 	status_set('stop') |  | ||||||
| 	# Определяем платформу |  | ||||||
| 	if system() == 'Linux': |  | ||||||
| 		# вырубаем прокси и скрипты |  | ||||||
| 		sys('killall bore') |  | ||||||
| 		sys('killall python') |  | ||||||
| 	elif system() == 'Windows': |  | ||||||
| 		sys('taskkill /f /im bore.exe') |  | ||||||
| 		sys('taskkill /f /im python.exe') |  | ||||||
| 
 |  | ||||||
| # Кнопка выключения |  | ||||||
| @callback( |  | ||||||
|   Output('shut_mess', 'displayed'), |  | ||||||
|   Input('off_btn', 'n_clicks'), |  | ||||||
| 	prevent_initial_call=True |  | ||||||
| ) |  | ||||||
| def shut_btn(n_clicks): |  | ||||||
| 	th = Thread(target=shutdown) |  | ||||||
| 	th.start() |  | ||||||
| 	return True |  | ||||||
| 
 | 
 | ||||||
| # Обновление нашего порта (зачем?) | # Обновление нашего порта (зачем?) | ||||||
| @callback(Output('our_port', 'children'), | @callback(Output('our_port', 'children'), | ||||||
|  | |||||||
							
								
								
									
										2
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								main.py
									
									
									
									
									
								
							| @ -63,7 +63,7 @@ if __name__ == '__main__': | |||||||
| 	p = Process(target=main) | 	p = Process(target=main) | ||||||
| 	p.start() | 	p.start() | ||||||
| 
 | 
 | ||||||
| 	status_set('work') # Устанавливаем статус, что программа работает | 	status_set(True) # Устанавливаем статус, что программа работает | ||||||
| 
 | 
 | ||||||
| 	st = status_check() | 	st = status_check() | ||||||
| 	while st: | 	while st: | ||||||
|  | |||||||
							
								
								
									
										10
									
								
								proxy.py
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								proxy.py
									
									
									
									
									
								
							| @ -2,8 +2,6 @@ from os import system, name | |||||||
| from threading import Thread | from threading import Thread | ||||||
| from time import sleep | from time import sleep | ||||||
| 
 | 
 | ||||||
| from status import * |  | ||||||
| 
 |  | ||||||
| global http_out ; http_out = None | global http_out ; http_out = None | ||||||
| def proxy_http(port): | def proxy_http(port): | ||||||
| 	global http_out | 	global http_out | ||||||
| @ -26,15 +24,13 @@ def watch_http(port): | |||||||
| 	run.start() | 	run.start() | ||||||
| 
 | 
 | ||||||
| 	global http_out | 	global http_out | ||||||
| 	st = status_check() | 	while True: | ||||||
| 	while st: |  | ||||||
| 		# Если команда вышла | 		# Если команда вышла | ||||||
| 		if http_out or not run.is_alive(): | 		if http_out or not run.is_alive(): | ||||||
| 			run.join(1) | 			run.join(1) | ||||||
| 			http_out = None | 			http_out = None | ||||||
| 			run = Thread(target=proxy_http, args=(port,)) | 			run = Thread(target=proxy_http, args=(port,)) | ||||||
| 			run.start() | 			run.start() | ||||||
| 		st = status_check() |  | ||||||
| 		sleep(1) | 		sleep(1) | ||||||
| 
 | 
 | ||||||
| def watch_serv(port): | def watch_serv(port): | ||||||
| @ -42,12 +38,10 @@ def watch_serv(port): | |||||||
| 	run.start() | 	run.start() | ||||||
| 
 | 
 | ||||||
| 	global serv_out | 	global serv_out | ||||||
| 	st = status_check() | 	while True: | ||||||
| 	while st: |  | ||||||
| 		if serv_out or not run.is_alive(): | 		if serv_out or not run.is_alive(): | ||||||
| 			run.join(1) | 			run.join(1) | ||||||
| 			serv_out = None | 			serv_out = None | ||||||
| 			run = Thread(target=proxy_serv, args=(port,)) | 			run = Thread(target=proxy_serv, args=(port,)) | ||||||
| 			run.start() | 			run.start() | ||||||
| 			st = status_check() |  | ||||||
| 		sleep(1) | 		sleep(1) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user