#!/usr/bin/python3 """ This Script decrypt Wireguard files for Wirepy users """ import os import shutil from pathlib import Path from subprocess import check_call uname: Path = Path("/tmp/.log_user") with open(uname, "r", encoding="utf-8") as f: log_name = f.readline() # Folder Name "tlecdewg" = Tunnel Encrypt Decrypt Wireguard folder_path: Path = Path("/tmp/tlecdcwg/") keyfile: Path = Path(f"/home/{log_name}/.config/wire_py/pbwgk.pem") PKEYFILE: Path = "/usr/local/etc/ssl/pwgk.pem" if not keyfile.is_file(): check_call(["openssl", "rsa", "-in", PKEYFILE, "-out", keyfile, "-outform", "PEM", "-pubout"]) shutil.chown(keyfile, 1000, 1000) folder_path2 = f"/home/{log_name}/.config/wire_py/" detl: list[str] = os.listdir(folder_path2) os.chdir(folder_path2) detl.remove("keys") detl.remove("settings") if os.path.exists(f"{folder_path2}pbwgk.pem"): detl.remove("pbwgk.pem") for detunnels in detl: tlname2 = f"{detunnels[:-4]}.conf" extpath = f"{folder_path}/{tlname2}" check_call(["openssl", "pkeyutl", "-decrypt", "-inkey", PKEYFILE, "-in", detunnels, "-out", extpath]) shutil.chown(extpath, 1000, 1000)