summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjerome <jerome@xlinfo.fr>2025-06-16 22:01:56 +0200
committerjerome <jerome@xlinfo.fr>2025-06-16 22:01:56 +0200
commit9b5f2fc5fcca4c10095a63a18df908534df2edc0 (patch)
treefcb6210bcdeee5c0b6092329be56df28d7da39be
parent09f1112117464d107cbc9beb9787db559cace73c (diff)
downloadpython-9b5f2fc5fcca4c10095a63a18df908534df2edc0.tar.gz
python-9b5f2fc5fcca4c10095a63a18df908534df2edc0.zip
getpass
-rw-r--r--sshClient.py23
1 files changed, 14 insertions, 9 deletions
diff --git a/sshClient.py b/sshClient.py
index 62231a4..41dabb4 100644
--- a/sshClient.py
+++ b/sshClient.py
@@ -1,19 +1,24 @@
-import sys, paramiko
+import sys, paramiko, getpass
-def sshClient(hostname, username, password,cmd):
+def sshClient(hostname,port,cmd,username,password):
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
- client.connect(hostname, username=username, password=password)
- _stdin, _stdout,_stderr = client.exec_command(cmd)
- print(_stdout.read().decode())
- client.close()
+ try:
+ client.connect(hostname,port=port,username=username, password=password)
+ _stdin, _stdout,_stderr = client.exec_command(cmd)
+ print(_stdout.read().decode())
+ except paramiko.ssh_exception.AuthenticationException:
+ print("Erreur d'authenfication !")
+ finally:
+ client.close()
if __name__ == "__main__":
try:
hostname = sys.argv[1]
- username = sys.argv[2]
- password = input("Mot de passe : ")
+ port = sys.argv[2]
cmd = sys.argv[3]
- sshClient(hostname, username, password, cmd)
+ username = input("Nom d'utilisateur : ")
+ password = getpass.getpass()
+ sshClient(hostname,port,cmd,username,password)
except IndexError:
print(f"{sys.argv[0]} demande des arguments")