一个命令行工具,可以在没有SSH的pfSense上运行远程shell命令

pfsense-vshell的Python项目详细描述


简介

pfSense vShell是一个命令行工具,它允许用户在不启用sshd的情况下远程输入shell命令。 这允许管理员自动安装包,启用sshd,并对 盒子。在

安装

pfSense vShell需要Python3/Pip3才能安装

要安装: pip3 install pfsense-vshell

要卸载: pip3 uninstall pfsense-vshell

示例

下面是pfsense vshell的一些常见用例示例。请注意,身份验证可以通过内联方式传入 参数(指定-u后跟用户名,-p后跟密码)或交互式提示(如果-u 或未指定-p)。内联身份验证允许轻松编写命令脚本,而交互式 身份验证将保护密码输入,并允许用户指定多个命令(如实际的shell)

1:运行单个shell命令(带内联身份验证)

$ pfsense-vshell 127.0.0.1 --command "cat /etc/version" -u admin -p pfsense
2.4.5-RELEASE

2:启动交互式虚拟外壳会话以运行多个命令(使用交互式身份验证)

^{pr2}$

3:运行单个命令在pfSense上启用sshd(使用交互式密码输入)

$ pfsense-vshell 127.0.0.1 --command "pfSsh.php playback enablesshd" -u admin

4:运行单个命令在pfSense上安装包(使用内联身份验证)

$ pfsense-vshell 127.0.0.1 --command "pkg install -y pfSense-pkg-nmap" -u admin -p pfsense

5:显示pfSense vShell版本

$ pfsense-vshell --version
pfsensevshell v0.0.1 Darwin/x86_64

限制

  • 交互式命令无法在pfSense vShell中运行,无法在运行后添加其他输入 你的命令。如果命令在90秒内未返回返回代码,则命令将超时。在
  • 某些旧版本(2.3之前的版本)可能无法正常工作。始终测试针对生产系统运行的功能。在
  • 虚拟shell会话将在90秒不活动后自动关闭。超时计时器将在 每个命令输入。在
  • 默认情况下,您被放置在webConfigurator的web根目录(/usr/local/www/)中。不能更改目录。 如果不是绝对的,任何文件交互都是相对于这个目录的。在
  • 默认情况下,在pfSense vShell中运行的任何命令都具有根访问权限。没有办法改变这一点,所以要小心。在
  • 您的pfSense用户必须能够访问webConfigurator中的“诊断”>;“命令提示”页面。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaFX SwingWorker等价物?   java如何检查一个字符串只包含数字和一个小数点?   java遇到了异常组织。阿帕奇。卡塔琳娜。LifecycleException:无法启动组件   java如何从日期格式获取最低计时单位?   java应用服务器与开发过程的集成   java我无法运行Junit测试   无法在java多线程处理中维护生产者任务的顺序   java如何在CLI应用程序中“拦截”Ctrl+C?   java如何使用JSch进行原子SFTP文件传输,以便在写入过程完成之前无法访问该文件?   java当用户摆弄html范围滑块时,如何更改内容(文本)?   如何在Java中向现有文件追加文本?   JUnit测试中的java模拟Apache驼峰位置   java Maven更新项目和依赖项