summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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")