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