ssl_de/encrypt new works

This commit is contained in:
Désiré Werner Menrath 2025-05-12 15:11:40 +02:00
parent fb0158d1cd
commit 3da54642a0
5 changed files with 40 additions and 37 deletions

View File

@ -62,6 +62,7 @@ class Create:
text=True,
check=False,
)
# Output from Openssl Error
if process.stderr:
print(process.stderr)

View File

@ -25,6 +25,7 @@ License along with this library. If not, see
<action id="org.ssl_encrypt">
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/local/bin/ssl_encrypt.py</annotate>

View File

@ -7,7 +7,7 @@ from subprocess import CompletedProcess
import subprocess
from wp_app_config import AppConfig
log_name = AppConfig.USER_FILE.read_text()
log_name = AppConfig.USER_FILE.read_text().strip()
keyfile: Path = Path(f"/home/{log_name}/.config/wire_py/pbwgk.pem")
path_of_crypted_tunnel: Path = Path(f"/home/{log_name}/.config/wire_py")
@ -60,7 +60,7 @@ if AppConfig.PUBLICKEY.exists:
text=True,
check=False,
)
shutil.chown(f"{AppConfig.TEMP_DIR}/{base_name}.conf", 1000, 1000)
print(f"Processing of the file: {tunnel_path}")
if process.stdout:

View File

@ -1,16 +1,17 @@
#!/usr/bin/python3
""" This Script encrypt Wireguardfiles for Wirepy users for more Security """
from pathlib import Path
import shutil
import subprocess
from subprocess import CompletedProcess
from wp_app_config import AppConfig
log_name = AppConfig.USER_FILE.read_text()
log_name = AppConfig.USER_FILE.read_text().strip()
keyfile: Path = Path(f"/home/{log_name}/.config/wire_py/pbwgk.pem")
target: Path = Path(f"/home/{log_name}/.config/wire_py/")
if not keyfile.is_file():
process: CompletedProcess[str] = subprocess.run(
@ -44,39 +45,37 @@ if not keyfile.is_file():
shutil.chown(keyfile, 1000, 1000)
if AppConfig.TEMP_DIR.exists() and not any(AppConfig.TEMP_DIR.iterdir()):
clear_files = [str(file) for file in path_of_crypted_tunnel.glob()]
# any() get True when directory is not empty
if AppConfig.TEMP_DIR.exists() and any(AppConfig.TEMP_DIR.iterdir()):
clear_files = [str(file) for file in AppConfig.TEMP_DIR.glob("*.conf")]
for config_file in clear_files:
base_name = Path(config_file).stem
process: CompletedProcess[str] = subprocess.run(
[
"openssl",
"pkeyutl",
"-encrypt",
"-inkey",
keyfile,
"-pubin",
"-in",
config_file,
"-out",
f"{AppConfig.CONFIG_DIR}/{base_name}.dat",
],
capture_output=True,
text=True,
check=False,
)
for config_file in clear_files:
base_name = Path(config_file).stem
process: CompletedProcess[str] = subprocess.run(
[
"openssl",
"pkeyutl",
"-encrypt",
"-inkey",
keyfile,
"-pubin",
"-in",
config_file,
"-out",
f"{target}/{base_name}.dat",
],
capture_output=True,
text=True,
check=False,
)
print(f"Processing of the file: {config_file}")
print(f"Processing of the file: {config_file}")
if process.stdout:
print(process.stdout)
# Output from Openssl Error
if process.stderr:
print("(Error):", process.stderr)
# Output from Openssl Error
if process.stderr:
print("(Error):", process.stderr)
if process.returncode == 0:
print(f"File {base_name}.dat successfully encrypted.")
else:
print(f"Error by {config_file}: Code: {process.returncode}")
if process.returncode == 0:
print(f"File {base_name}.dat successfully encrypted.")
else:
print(f"Error by {config_file}: Code: {process.returncode}")

View File

@ -713,6 +713,7 @@ class FrameWidgets(ttk.Frame):
],
text=True,
)
Create.encrypt()
else:
shutil.copy(filepath, f"{AppConfig.TEMP_DIR}/")
@ -735,8 +736,8 @@ class FrameWidgets(ttk.Frame):
],
text=True,
)
Create.encrypt()
Create.encrypt()
self.str_var.set("")
self.a = Tunnel.active()
self.l_box.insert(0, self.a)
@ -774,6 +775,7 @@ class FrameWidgets(ttk.Frame):
"no",
]
)
elif ("PrivateKey = " in read) and ("Endpoint = " in read):
pass
else: