国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

自定义构建交互式SSH应用程序,以Python为例

发布时间:2019/09/06标签:   自定义    点击量:

原标题:自定义构建交互式SSH应用程序,以Python为例
SSH的应用形式分两种方法交互式和非交互式的形式。在主动化体系中,更罕用的长短交互式SSH,主动化东西都是基于这类形式,比方ansiable和salt-ssh,另有文件同步东西 rsync的SSH形式。本文咱们就来讲说交互式SSH利用的构建,并以Python为例完成了一个基础的交互式利用。

自定义构建交互式SSH应用程序,以Python为例
自界说shell在效劳器上,能够应用OpenSSH实现三个步调来取得shell:身份考证,shell会话和下令。咱们能够随便设置shell(经过/etc/passwd)。比方,假如将用户的登录shell设置为/usr/bin/cshell,登岸后,就会运转cshell(能够为自界说的交互式顺序)。shell界说也十分简略,只要以root权限编纂/etc/passwd修正最初一个字段为自界说的shell顺序既可。假如用户经过调配的TTY(默许情形下已实现)衔接到效劳器,那就将可能运转自界说的利用顺序或交互式利用顺序。authorized_keys设置须要留神的是,假如应用自界说的shell利用顺序,无奈接收用户通报的额定下令行参数,比方ssh user@host ls -a履行时会丢掉最初的-a参数。为懂得决这个成绩,须要经过笼罩运转的下令方法,为了完成笼罩运转下令的操纵,咱们能够应用用户证书考证文件authorized_keys文件。在该文件每行之前,能够增加实用于应用该密钥登录的用户的选项。这些选项中有一个选项是"command"选项。比方给将/home/user/.ssh/authorized_keys增加一下语句:command="/usr/bin/Ccommand"ssh-rsa...user用户的shell(能够应当是/bin/sh)便可以主动运转nethack,不管设置何种command,(假如须要,都存储在情况中的SSH_ORIGINAL_COMMAND中)都市先履行。出于保险起因,个别会设置一上限制设置:restrict,pty,command="…"ssh-rsa...user更具体的设置选项,能够参考sshd民间手册。默许会限度封闭大少数货色,经过pty显式从新启用TTY调配,如许便可以做自界说本人的终端利用(比方Python下curses编写的利用)。咱们再来看一个典范的gitlab下典范的多用户限度登岸型的authorized_keys设置实例:
自定义构建交互式SSH应用程序,以Python为例
sshd_config设置另一个能够用来设置启动下令的处所sshd设置文件:/etc/ssh/sshd_config。经过sshd_config的AuthorizedKeysCommand来设置额定履行下令。它设置履行恣意顺序,并从尺度输入stdout猎取authorized_keys文件。比方能够设置为:AuthorizedKeysCommand/usr/bin/Ccommand"%u""%h""%t""%k"AuthorizedKeysUserroot

上一篇:主动防御做好网络安全教育

下一篇:没有了

返回
版权信息Copyright ? 银河官网 版权所有??? ICP备案编号:鲁ICP备09013610号