Login removed to superuser mode on Debian 10 using pexpect/pxssh python
You need to use the Python language to remotely change the ssh ip address to the OS Debian 10.
I decided to do this via pexpect/pxssh
, but to change the ip address, you need to enter superuser mode via su and enter the password.
How to implement password input via a script?
Here is my code:
from pexpect import pxssh
try:
s = pxssh.pxssh()
hostname = '192.168.1.1'
username = 'user'
password = 'root'
s.login(hostname, username, password)
s.sendline('uptime')
s.prompt()
print(s.before)
s.sendline('su')
s.prompt()
print(s.before)
s.sendline('sudo ifconfig ens33 192.168.1.14 netmask 255.255.255.0')
s.prompt()
print(s.before)
except pxssh.ExceptionPxssh as e:
print("pxssh failed on login.")
print(e)
2
Author: Анатолий Шевелев, 2020-09-25
1 answers
Try this way:
from pexpect import pxssh
psswd = 'ur psswd'
try:
s = pxssh.pxssh()
hostname = '192.168.1.1'
username = 'user'
password = 'root'
s.login(hostname, username, password)
s.sendline('uptime')
s.prompt()
print(s.before)
s.sendline('su')
s.prompt()
print(s.before)
s.sendline(psswd)
s.prompt()
print(s.before)
s.sendline('sudo ifconfig ens33 192.168.1.14 netmask 255.255.255.0')
s.prompt()
print(s.before)
except pxssh.ExceptionPxssh as e:
print("pxssh failed on login.")
print(e)
1
Author: Exord, 2020-09-26 03:32:29