如何使用套接字使用 SSH 将用户名和密码发送到开发板?
How to use sockets to send user and password to a devboard, using SSH?
我正在使用套接字连接到 Coral 开发板。我想连接到开发板并执行分类脚本。
每当我执行我的代码(下面的行)时,它都会显示 "In [3]:" 大约 10 秒,好像在等待什么。然后 "In [4]" 出现。这是怎么回事?我已经发送了用户名和密码。
这是我的代码:
import socket
TCP_IP = '172.16.1.11'
TCP_PORT = 22
BUFFER_SIZE = 1024
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((TCP_IP, TCP_PORT))
s.send(b'login')
print(s.recv(BUFFER_SIZE).decode())
s.send(b'mendel')
print(s.recv(BUFFER_SIZE).decode())
s.send(b'Password')
print(s.recv(BUFFER_SIZE).decode())
s.send(b'password')
print(s.recv(BUFFER_SIZE).decode())
这是控制台中显示的内容
In [3]: runfile('C:/Users/Coral/Classification/demo_socket.py', wdir='C:/Users/Coral/Classification')
SSH-2.0-OpenSSH_7.9p1 Debian-10+deb10u2
In [4]:
编辑
当我使用时:
ssh mendel@172.16.1.11
我已经在与 SSH 服务器对话。为什么我不能直接用 python 写登录名和密码而不是用手指写?
我用"paramiko"解决了它。
import paramiko
#Server's data
IP = '172.16.2.47'
PORT = 22
USER = 'mendel'
PASSWORD = 'mendel'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname = IP, port=PORT, username = USER, password = PASSWORD)
stdin, stdout, stderr = ssh.exec_command('hostname -I')
output = stdout.readlines()
type(output)
print('\n'.join(output))
'''
我正在使用套接字连接到 Coral 开发板。我想连接到开发板并执行分类脚本。 每当我执行我的代码(下面的行)时,它都会显示 "In [3]:" 大约 10 秒,好像在等待什么。然后 "In [4]" 出现。这是怎么回事?我已经发送了用户名和密码。
这是我的代码:
import socket
TCP_IP = '172.16.1.11'
TCP_PORT = 22
BUFFER_SIZE = 1024
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((TCP_IP, TCP_PORT))
s.send(b'login')
print(s.recv(BUFFER_SIZE).decode())
s.send(b'mendel')
print(s.recv(BUFFER_SIZE).decode())
s.send(b'Password')
print(s.recv(BUFFER_SIZE).decode())
s.send(b'password')
print(s.recv(BUFFER_SIZE).decode())
这是控制台中显示的内容
In [3]: runfile('C:/Users/Coral/Classification/demo_socket.py', wdir='C:/Users/Coral/Classification')
SSH-2.0-OpenSSH_7.9p1 Debian-10+deb10u2
In [4]:
编辑
当我使用时:
ssh mendel@172.16.1.11
我已经在与 SSH 服务器对话。为什么我不能直接用 python 写登录名和密码而不是用手指写?
我用"paramiko"解决了它。
import paramiko
#Server's data
IP = '172.16.2.47'
PORT = 22
USER = 'mendel'
PASSWORD = 'mendel'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname = IP, port=PORT, username = USER, password = PASSWORD)
stdin, stdout, stderr = ssh.exec_command('hostname -I')
output = stdout.readlines()
type(output)
print('\n'.join(output))
'''