python如何通过串口SSH登录服务器
需要写一个基于串口通信协议的ssh服务器和客户端,服务器部署到linux上,客户端在windows上;
其次,客户端要提供sdk for python;
最后,你就可以用python通过ssh登录linux了。
1、基于mongo实现远程连接
[plain] view plaincopy
mongo -u admin -p admin 1921680197:27017/pagedb
通过mongo实现连接,可以非常灵活的选择参数选项,参看命令帮助,如下所示:
[plain] view plaincopy
mongo --help
MongoDB shell version: 183
usage: mongo [options] [db address] [file names (ending in js)]
db address can be:
foo foo database on local machine
19216905/foo foo database on 19216805 machine
19216905:9999/foo foo database on 19216805 machine on port 9999
options:
--shell run the shell after executing files
--nodb don't connect to mongod on startup - no 'db address'
arg expected
--quiet be less chatty
--port arg port to connect to
--host arg server to connect to
--eval arg evaluate javascript
-u [ --username ] arg username for authentication
-p [ --password ] arg password for authentication
-h [ --help ] show this usage information
--version show version information
--verbose increase verbosity
--ipv6 enable IPv6 support (disabled by default)
2、基于MongoDB支持的javascript实现远程连接
当你已经连接到一个远程的MongoDB数据库服务器(例如,通过mongo连接到1921680184),现在想要在这个会话中连接另一个远程的数据库服务器(1921680197),可以执行如下命令:
[plain] view plaincopy
> var x = new Mongo('1921680197:27017')
> var ydb = xgetDB('pagedb');
> use ydb
switched to db ydb
> db
ydb
> ydbpagefindOne()
{
"_id" : ObjectId("4eded6a5bf3bfa0014000003"),
"content" : "巴黎是浪漫的城市,可是",
"pubdate" : "2006-03-19",
"title" : "巴黎:从布鲁塞尔赶到巴黎",
"url" : "http://francebytravelcn/Scenery/528/cblsegdblhtml"
}
上述通过MongoDB提供的JavaScript脚本,实现对另一个远程数据库服务器进行连接,操作指定数据库pagedb的page集合。
如果启用了安全认证模式,可以在获取数据库连接实例时,指定认证账号,例如:
[plain] view plaincopy
> var x = new Mongo('1921680197:27017')
> var ydb = xgetDB('pagedb', 'shirdrn', '(jkfFS$343$_\=\,F@3');
> use ydb
switched to db ydb
远程服务器你先得登录才能执行相关操作,比如
import paramiko
ssh = paramikoSSHClient() # 创建SSH对象
sshset_missing_host_key_policy(paramikoAutoAddPolicy()) # 允许连接不在know_hosts文件中的主机
sshconnect(hostname='1921681110', port=22, username='root', password='123456') # 连接服务器
sshexec_command('mkdir -p /1/2/3/4') # 执行命令
首先需要和客户端进行通信,就跨平台来说,自己写个server端在客户端上运行,发送指令,接收回传即可
linux下有很多选择,基于ssh的fabric、ansble、以及python模块paramiko都可以做到无客户端执行远端操作
你需要登录云服务器管理控制台,记录被我打马赛克位置的公网ip。
登录服务器
windows推荐下putty进行连接远程服务器,linux和macos不需要那么麻烦,ssl就行了。
putty
在下图的host name中输入你的公网IP,点击open。
putty界面
输入密码,看不见输入不要慌,linux就是这样保护安全的。
Paste_Imagepng
登录成功界面见下图,然后想怎么操作就怎么操作了。
登陆成功界面
运行我的python文件
推荐FileZilla进行文件传输(不具体说明了),我上传了我的flask网站项目
我的项目
记住服务器同时有Python2和Python3,
python
运行的时候记得使用合适的版本,我用的是虚拟环境(自行百度如何创建虚拟环境)
在运行python之前先安装一个screen,他可以将一个程序在后台运行
sudo apt-get install screen
运行python文件,成功后按下ctrl+A和ctrl+D可以隐藏。隐藏后可以输入screen -r 恢复。
运行成功
0条评论