mirror of https://github.com/jumpserver/jumpserver
parent
548a374c6d
commit
3eab621b28
|
@ -313,7 +313,7 @@ class Config(dict):
|
||||||
'TERMINAL_HOST_KEY': '',
|
'TERMINAL_HOST_KEY': '',
|
||||||
'TERMINAL_TELNET_REGEX': '',
|
'TERMINAL_TELNET_REGEX': '',
|
||||||
'TERMINAL_COMMAND_STORAGE': {},
|
'TERMINAL_COMMAND_STORAGE': {},
|
||||||
# 未来废弃(当下迁移会用)
|
# 未来废弃(目前迁移会用)
|
||||||
'TERMINAL_RDP_ADDR': '',
|
'TERMINAL_RDP_ADDR': '',
|
||||||
# 保留(Luna还在用)
|
# 保留(Luna还在用)
|
||||||
'TERMINAL_MAGNUS_ENABLED': True,
|
'TERMINAL_MAGNUS_ENABLED': True,
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# Generated by Django 3.1.14 on 2022-04-12 07:39
|
# Generated by Django 3.1.14 on 2022-04-12 07:39
|
||||||
|
|
||||||
|
import copy
|
||||||
import common.fields.model
|
import common.fields.model
|
||||||
import django.core.validators
|
import django.core.validators
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
|
@ -9,7 +10,9 @@ from django.conf import settings
|
||||||
|
|
||||||
|
|
||||||
def migrate_endpoints(apps, schema_editor):
|
def migrate_endpoints(apps, schema_editor):
|
||||||
endpoint_data = {
|
Endpoint = apps.get_model("terminal", "Endpoint")
|
||||||
|
# migrate default
|
||||||
|
default_data = {
|
||||||
'id': '00000000-0000-0000-0000-000000000001',
|
'id': '00000000-0000-0000-0000-000000000001',
|
||||||
'name': 'Default',
|
'name': 'Default',
|
||||||
'host': '',
|
'host': '',
|
||||||
|
@ -17,19 +20,50 @@ def migrate_endpoints(apps, schema_editor):
|
||||||
'http_port': 0,
|
'http_port': 0,
|
||||||
'created_by': 'System'
|
'created_by': 'System'
|
||||||
}
|
}
|
||||||
|
default_endpoint = Endpoint.objects.create(**default_data)
|
||||||
|
|
||||||
if settings.XRDP_ENABLED:
|
if not settings.XRDP_ENABLED:
|
||||||
xrdp_addr = settings.TERMINAL_RDP_ADDR
|
return
|
||||||
if ':' in xrdp_addr:
|
# migrate xrdp
|
||||||
hostname, port = xrdp_addr.strip().split(':')
|
xrdp_addr = settings.TERMINAL_RDP_ADDR
|
||||||
else:
|
if ':' in xrdp_addr:
|
||||||
hostname, port = xrdp_addr, 3389
|
host, rdp_port = xrdp_addr.strip().split(':')
|
||||||
endpoint_data.update({
|
else:
|
||||||
'host': '' if hostname.strip() in ['localhost', '127.0.0.1'] else hostname.strip(),
|
host, rdp_port = xrdp_addr, 3389
|
||||||
'rdp_port': int(port)
|
host = host.strip()
|
||||||
})
|
if host in ['localhost', '127.0.0.1']:
|
||||||
Endpoint = apps.get_model("terminal", "Endpoint")
|
host = ''
|
||||||
Endpoint.objects.create(**endpoint_data)
|
if not host:
|
||||||
|
return
|
||||||
|
if isinstance(rdp_port, str) and rdp_port.isdigit():
|
||||||
|
rdp_port = int(rdp_port)
|
||||||
|
elif isinstance(rdp_port, int) and (0 <= rdp_port <= 65535):
|
||||||
|
rdp_port = rdp_port
|
||||||
|
else:
|
||||||
|
rdp_port = 3389
|
||||||
|
xrdp_data = {
|
||||||
|
'name': 'XRDP',
|
||||||
|
'host': host,
|
||||||
|
'https_port': 0,
|
||||||
|
'http_port': 0,
|
||||||
|
'ssh_port': 0,
|
||||||
|
'rdp_port': rdp_port,
|
||||||
|
'mysql_port': 0,
|
||||||
|
'mariadb_port': 0,
|
||||||
|
'postgresql_port': 0,
|
||||||
|
'created_by': 'System'
|
||||||
|
}
|
||||||
|
xrdp_endpoint = Endpoint.objects.create(**xrdp_data)
|
||||||
|
|
||||||
|
EndpointRule = apps.get_model("terminal", "EndpointRule")
|
||||||
|
xrdp_rule_data = {
|
||||||
|
'name': 'XRDP',
|
||||||
|
'ip_group': ['*'],
|
||||||
|
'priority': 20,
|
||||||
|
'endpoint': xrdp_endpoint,
|
||||||
|
'created_by': 'System'
|
||||||
|
}
|
||||||
|
EndpointRule.objects.create(**xrdp_rule_data)
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
Loading…
Reference in New Issue