first commit

This commit is contained in:
2023-01-25 13:23:03 +01:00
commit 531c336c98
2 changed files with 115 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
Ordner anlegen
mkdir -p ~/.config/autostart-scripts/ ok
mkdir -p ~/.config/plasma-workspace/shutdown/ ok
mkdir -p ~/.config/plasma-workspace/env/ ok
Skript erstelle : ~/.config/autostart-scripts/ssh-add.sh
#! /bin/zsh
sleep 10
SSH_ASKPASS=/usr/bin/ksshaskpass
export SSH_ASKPASS
ssh-add ~/.ssh/id_ed25519
Skript erstellen ~/.config/plasma-workspace/shutdown/ssh-agent-shutdown.sh
#!/bin/sh
[ -z "$SSH_AGENT_PID" ] || eval "$(ssh-agent -k)"
Skript erstelle ~/.config/plasma-workspace/env/ssh-agent-startup.sh
#!/bin/sh
[ -n "$SSH_AGENT_PID" ] || eval "$(ssh-agent -s)"
SSH_ASKPASS=/usr/bin/ksshaskpass
export SSH_ASKPASS
Rechte zum ausführen
chmod +x ~/.config/autostart-scripts/ssh-add.sh
chmod +x ~/.config/plasma-workspace/shutdown/ssh-agent-shutdown.sh
chmod +x ~/.config/plasma-workspace/env/ssh-agent-startup.sh
sudo vi /etc/profile.d/ksshaskpass.sh
#!/bin/bash
export SSH_ASKPASS=/usr/bin/ksshaskpass
sudo chmod +x /etc/profile.d/ksshaskpass.sh

View File

@@ -0,0 +1,75 @@
#! /usr/bin/env Python3
import os, stat
def create_folder (check_folders = list):
exist_dict = []
for folder in check_folders:
if os.path.isdir(folder) is True:
exist_dict.append({"name": folder, "status": "existiert bereits"})
else:
os.makedirs(folder, exist_ok=True)
exist_dict.append({"name": folder, "status": "wurde angelegt"})
return exist_dict
def read_sshkeys(ssh_folder = str):
key_liste = []
for root, dirs, files in os.walk(ssh_folder, topdown=False):
for name in files:
FullPATH = str(os.path.join(root, name))
if FullPATH.endswith(".pub") is False and FullPATH.endswith("known_hosts") is False and FullPATH.endswith("authorized_keys") is False:
key_liste.append(FullPATH)
return key_liste
def create_scripts_addkeys(script_folder = str, keys = list):
try:
script_file = script_folder + "/ssh-add.sh"
with open(file=script_file, mode="w") as script:
print("""#! /bin/bash\nsleep 10\nSSH_ASKPASS=/usr/bin/ksshaskpass\nexport SSH_ASKPASS\nssh-add {ssh_keys}
""".format(ssh_keys=" ".join(keys)), file=script)
os.chmod(path=script_file, mode=stat.S_IRWXU)
except:
raise PermissionError("Keine Rechte die Datei " + script_file + " zu erstellen")
else:
return print(script_file, "erstellt",sep=" ")
def create_scripts_shutdown(script_folder = str):
try:
script_file = script_folder + "/ssh-agent-shutdown.sh"
with open(file=script_file, mode="w" ) as script:
print("""#!/bin/sh\n[ -z "$SSH_AGENT_PID" ] || eval "$(ssh-agent -k)" """, file=script)
os.chmod(path=script_file, mode=stat.S_IRWXU)
except:
raise PermissionError("Keine Rechte die Datei " + script_file + " zu erstellen")
else:
return print(script_file, "erstellt",sep=" ")
def create_scripts_startup(script_folder = str):
try:
script_file = script_folder + "/ssh-agent-shartup.sh"
with open(file=script_file, mode="w" ) as script:
print("""#!/bin/sh\n[ -z "$SSH_AGENT_PID" ] || eval "$(ssh-agent -s)"\nSSH_ASKPASS=/usr/bin/ksshaskpass\nexport SSH_ASKPASS""", file=script)
os.chmod(path=script_file, mode=stat.S_IRWXU)
except:
raise PermissionError("Keine Rechte die Datei " + script_file + " zu erstellen")
else:
return print(script_file, "erstellt",sep=" ")
def main():
kde_folders = [
os.environ["HOME"] + "/.config/autostart-scripts",
os.environ["HOME"] + "/.config/plasma-workspace/shutdown",
os.environ["HOME"] + "/.config/plasma-workspace/env"
]
for test in create_folder(check_folders=kde_folders):
print("Folder:" + test["name"] + " status: " + test["status"])
#print(read_sshkeys(os.environ["HOME"] + "/.ssh"))
create_ssh_script_addkey = create_scripts_addkeys(kde_folders[0], read_sshkeys(os.environ["HOME"] + "/.ssh") )
create_ssh_script_shutdown = create_scripts_shutdown(script_folder=kde_folders[1])
create_ssh_script_startup = create_scripts_startup(script_folder=kde_folders[2])
main()