bug fix: web terminal

This commit is contained in:
Usman Nasir
2019-11-03 19:31:21 +05:00
parent 1d4e588a73
commit a80d7456f6
11 changed files with 586 additions and 391 deletions

View File

@@ -1,13 +1,17 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.shortcuts import render, redirect
from django.shortcuts import render, redirect, HttpResponse
from plogical.acl import ACLManager
from plogical.CyberCPLogFileWriter import CyberCPLogFileWriter as logging
from loginSystem.views import loadLoginPage
from random import randint
import os
from plogical.processUtilities import ProcessUtilities
from plogical.firewallUtilities import FirewallUtilities
from firewall.models import FirewallRules
import json
# Create your views here.
def terminal(request):
@@ -25,6 +29,7 @@ def terminal(request):
writeToFile.writelines('code')
writeToFile.close()
## setting up ssh server
path = '/etc/systemd/system/cpssh.service'
curPath = '/usr/local/CyberCP/WebTerminal/cpssh.service'
@@ -36,7 +41,37 @@ def terminal(request):
command = 'systemctl start cpssh'
ProcessUtilities.executioner(command)
FirewallUtilities.addRule('tcp', '5678', '0.0.0.0/0')
newFWRule = FirewallRules(name='terminal', proto='tcp', port='5678', ipAddress='0.0.0.0/0')
newFWRule.save()
return render(request, 'WebTerminal/WebTerminal.html', {'verifyPath': verifyPath})
except BaseException, msg:
logging.writeToFile(str(msg))
return redirect(loadLoginPage)
return redirect(loadLoginPage)
def restart(request):
try:
userID = request.session['userID']
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadErrorJson()
command = 'systemctl restart cpssh'
ProcessUtilities.executioner(command)
data_ret = {'status': 1, 'error_message': 'None'}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
except BaseException, msg:
data_ret = {'status': 0, 'error_message': str(msg)}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)