Change ssh-tunnel
This commit is contained in:
+18
-22
@@ -1,8 +1,9 @@
|
||||
import mysql.connector.locales.eng
|
||||
import mysql.connector
|
||||
from sshtunnel import SSHTunnelForwarder
|
||||
import os
|
||||
import Controller.ssh_tunnel as ssh_tunnel
|
||||
|
||||
filename = os.path.basename(__file__)
|
||||
def ping(host):
|
||||
# Führe den Ping-Befehl aus und erfasse die Ausgabe
|
||||
result = os.system("ping -c 1 " + host)
|
||||
@@ -12,25 +13,22 @@ def ping(host):
|
||||
hostname = "forward.stines.de", 2223
|
||||
return hostname
|
||||
|
||||
server = SSHTunnelForwarder(
|
||||
("forward.stines.de", 2223),
|
||||
ssh_username="root",
|
||||
ssh_password="adm.3dfx12",
|
||||
remote_bind_address=('127.0.0.1', 3306)
|
||||
)
|
||||
|
||||
def database(query,name,user):
|
||||
server.start()
|
||||
print(f"SSH Server start Port:{server.local_bind_port}")
|
||||
# server.start()
|
||||
print(f"{filename}-SSH Server start Port:{ssh_tunnel.server_port()}")
|
||||
|
||||
mydb = mysql.connector.connect(
|
||||
host="127.0.0.1",
|
||||
port=server.local_bind_port,
|
||||
port=ssh_tunnel.server_port(),
|
||||
user="root",
|
||||
password="N53yBCswuawzBzS445VNAhWVMs3N59Gb9szEsrzXRBzarDqpdETpQeyt5v5CGe",
|
||||
database="" + name,
|
||||
auth_plugin='mysql_native_password',
|
||||
)
|
||||
mydb.connect()
|
||||
print("SQL Server Connect")
|
||||
print(f"{filename}-SQL Server Connect")
|
||||
print(f"{filename}-{query}")
|
||||
cursor = mydb.cursor()
|
||||
if "SELECT" in query:
|
||||
if user:
|
||||
@@ -38,10 +36,10 @@ def database(query,name,user):
|
||||
return cursor.fetchone()
|
||||
else:
|
||||
cursor.execute(query, user)
|
||||
print("Inside SELECT ALL")
|
||||
print(f"{filename}- Inside SELECT ALL")
|
||||
return cursor.fetchall()
|
||||
if "SHOW" in query:
|
||||
cursor.execute(query )
|
||||
cursor.execute(query)
|
||||
return cursor.fetchall()
|
||||
if "INSERT" in query:
|
||||
cursor.execute(query)
|
||||
@@ -50,9 +48,9 @@ def database(query,name,user):
|
||||
cursor.execute(query)
|
||||
mydb.commit()
|
||||
mydb.close()
|
||||
server.stop()
|
||||
# server.stop()
|
||||
def get_ip(query):
|
||||
print("GetIP")
|
||||
print(f"{filename}-GetIP")
|
||||
user = ""
|
||||
name = ""
|
||||
return database(query, name, user)
|
||||
@@ -60,21 +58,19 @@ def get_database():
|
||||
name = ""
|
||||
user = ""
|
||||
query = 'SHOW DATABASES'
|
||||
print(database(query,name,user))
|
||||
return database(query,name,user)
|
||||
def create_database(query,name):
|
||||
try:
|
||||
user = ""
|
||||
database(query,name,user)
|
||||
return ("Database Created")
|
||||
except Exception as e:
|
||||
print("Ein Fehler ist aufgetreten:", str(e))
|
||||
print(f"{filename}-Ein Fehler ist aufgetreten:", str(e))
|
||||
def add_user(query,name,user):
|
||||
try:
|
||||
database(query, name, user)
|
||||
return ("User Added")
|
||||
return print(f"{filename}-User Added")
|
||||
except Exception as e:
|
||||
print("Ein Fehler ist aufgetreten:", str(e))
|
||||
print(f"{filename}-Ein Fehler ist aufgetreten:", str(e))
|
||||
|
||||
def get_user(query,name,user):
|
||||
return database(query,name,user)
|
||||
@@ -82,5 +78,5 @@ def get_user(query,name,user):
|
||||
def get_cpu(query,name,cpu):
|
||||
return database(query,name,cpu)
|
||||
|
||||
def update_cpu(query,name,cpu):
|
||||
return database(query,name,cpu)
|
||||
def update_cpu(query,name):
|
||||
database(query,name)
|
||||
@@ -1,14 +1,16 @@
|
||||
import subprocess
|
||||
from datetime import datetime
|
||||
from Controller import mysql_connect
|
||||
|
||||
|
||||
import os
|
||||
filename = os.path.basename(__file__)
|
||||
def rds (ip,name):
|
||||
print(f"INSIDE-{filename}")
|
||||
powershell_command = "quser | Select-String -Pattern 'Aktiv'"
|
||||
result = subprocess.run(["powershell", "-Command", powershell_command], capture_output=True, text=True)
|
||||
fieldname = ["Benutzername","Anmeldezeit","Anmeldedatum"]
|
||||
# Die Ausgabe des Befehls aufteilen und die Benutzernamen und Anmeldezeiten extrahieren
|
||||
output_lines = result.stdout.strip().split('\n')[1:]
|
||||
print(f"{filename}-{output_lines}")
|
||||
logged_in_users = []
|
||||
|
||||
# Tabelle erstellen, falls sie noch nicht existiert
|
||||
@@ -20,6 +22,7 @@ def rds (ip,name):
|
||||
create_table_query += " ROW_FORMAT=DYNAMIC"
|
||||
user = ""
|
||||
mysql_connect.create_database(create_table_query, name)
|
||||
print(f"{filename}-{create_table_query}")
|
||||
|
||||
for line in output_lines:
|
||||
parts = line.split()
|
||||
@@ -27,10 +30,12 @@ def rds (ip,name):
|
||||
login_time = parts[5]
|
||||
login_date = parts[6]
|
||||
logged_in_users.append((username,login_date, login_time))
|
||||
print(f"{filename}-{logged_in_users}")
|
||||
|
||||
for user in logged_in_users:
|
||||
user = [cell if cell.strip() else "-" for cell in user]
|
||||
unix_time = int(datetime.now().timestamp())
|
||||
user = [unix_time] + user
|
||||
insert_query = f"INSERT INTO `{table_name}` (importdate, `{'`, `'.join(fieldname)}`) VALUES (%s, {', '.join(['%s'] * len(fieldname))})"
|
||||
mysql_connect.add_user(insert_query, name, user)
|
||||
mysql_connect.add_user(insert_query, name, user)
|
||||
print(f"{filename}-{insert_query}")
|
||||
@@ -0,0 +1,22 @@
|
||||
from sshtunnel import SSHTunnelForwarder
|
||||
import os
|
||||
|
||||
filename = os.path.basename(__file__)
|
||||
|
||||
server = SSHTunnelForwarder(
|
||||
("forward.stines.de", 2223),
|
||||
ssh_username="root",
|
||||
ssh_password="adm.3dfx12",
|
||||
remote_bind_address=('127.0.0.1', 3306)
|
||||
)
|
||||
|
||||
def server_start():
|
||||
server.start()
|
||||
return print(f"{filename}-Server started")
|
||||
|
||||
def server_stop():
|
||||
server.stop()
|
||||
return print(f"{filename}-Server stoped")
|
||||
|
||||
def server_port():
|
||||
return server.local_bind_port
|
||||
@@ -27,6 +27,6 @@ def get_hdd_info():
|
||||
return math.ceil(total_disk_size)
|
||||
|
||||
# Informationen über die CPU
|
||||
def set_system_info(name,ipadress):
|
||||
def set_system_info(ipadress):
|
||||
query = f"UPDATE `Kunden-Server` SET RAM={get_ram_info()}, Prozessor={get_cpu_sql()[0]}, CPU='{get_cpu_info()}' WHERE `IP-Adresse`='{ipadress}'"
|
||||
return mysql_connect.update_cpu(query,"Stines-GmbH",get_cpu_sql()[0])
|
||||
return mysql_connect.update_cpu(query,"Stines-GmbH","")
|
||||
Reference in New Issue
Block a user