为什么SSH命令通过腻子的工作与PHP的Phpseclib不同?
我正在编写一个脚本以使我的Windows Development PC自动部署到共享托管服务器. 我的结果不同,具体取决于我是通过Putty还是PHP 执行命令(均在PC上运行). 在PUTTY中,当我通过SSH登录服务器时,我可以运行命令: cd /www/ ls -la #outputs contents of /www 但是,当我通过phpseclib的php做到这一点时,如下所示,任何cd命令都被完全忽略: login('mydomain.com', 'mypassword')) { trigger_error("Login Failed", E_ERROR); } echo $ssh->exec
4 2023-05-29
编程技术问答社区
PHP脚本在没有解释的情况下被杀死
我正在以以下方式启动我的PHP脚本: bash cd 'path' php -f 'scriptname'.php PHP脚本运行时没有输出. 一段时间后,php脚本响应: Killed 我的想法是它到达了Memory_limit:ini_set('memory_limit', '40960M'); 增加内存限制似乎可以解决问题,但仅增加了边缘. 那Killed短语到底是什么意思? 解决方案 您的过程被杀死.可能有很多原因,但是很容易丢弃一些更明显的原因. php限制:如果您遇到了PHP限制,则会在日志文件中遇到一个错误,也可能会在命令行中遇到错误.通常不会打印"杀死" 会话 - IS enden-endise:如果您仍然有会话,那么您的会话明显未结束,因此请忽略所有NOHUP和& stuff 如果您的服务器饿死了(没有内存,没有交换),则内核可能会杀死您的过程.这可能是正在发生的事情. 在任何案件中:您的过程
0 2023-05-28
编程技术问答社区
安装fileinfo php扩展
由于FileInfo从PECL移动到PHP.通过WHM或PUTTY安装它的最佳方法是什么? 我尝试了以下命令: pecl install fileinfo 并收到以下错误: 警告:" PEAR/FILINFO"被弃用为"频道://php-src/ext/fileinfo/in php sources "警告:频道" pear.php.net"已更新其协议,使用" pecl channel-unperdate pear.php.net"进行更新 下载FileInfo-1.0.4.tgz ... 开始下载FileInfo-1.0.4.4.tgz(5,835字节) .....完成:5,835字节 3个源文件,构建 运行:phpize 找不到config.m4. 确保您在模块的顶级源目录中运行'/usr/local/bin/phpize' 错误:`phpize'失败 解决方案 此扩展名默认为PHP 5.3.0.在
0 2023-05-28
编程技术问答社区
使用pscp并获得拒绝许可
我使用PSCP使用此命令将文件传输到虚拟Ubuntu服务器: pscp test.php user@server:/var/www/test.php 我拒绝了错误权限.如果我尝试转移到文件夹/home/user/我没有问题. 我想这与我正在使用的用户无权访问文件夹/var/www/有关.当我使用SSH时,我必须使用sudo来访问/var/www/path - 我做. 是否可以指定PSCP应该" sudo"传输到服务器,以便我可以访问/var/www/path并实际上可以将文件传输到此文件夹? 解决方案 如果您拥有服务器: 将自己添加到www-data组: sudo usermod -a -G www-data 并设置正确的权限: sudo chown -R www-data:www-data /var/www/ sudo chmod -R 0775 /var/www/ 这应该解决问题. 其他解决方案 当
2 2023-05-25
编程技术问答社区
使用油灰时如何粘贴到VIM
我正在使用腻子连接远程主机并通过VIM进行编辑.当我尝试将某些东西粘贴到VIM时,我遇到了麻烦.就是说,我将某些内容复制到本地主机中的剪贴板,并希望将其粘贴到远程主机中的VIM.如何做? ps:我正在使用腻子!因此,我通过腻子打开一个VIM窗口.非常需要的是,我想在本地主机中复制一些东西,并将其粘贴到Putty打开的VIM编辑器中.就这样.谢谢! 解决方案 尝试使用 ctrl + shift + v v 或使用3个​​按钮鼠标 使用中间单击 编辑 那呢? shift + ins source : https://superuser.com/questions/180043/paste-the-windows-clipboard-into-my-putty-session-session-session-session-session-anly-the-keyboard 其他解决方案 您可以通过按右鼠标按钮(默认设置)或按 shift> shift +
6 2023-05-21
编程技术问答社区
如何通过PPK公共密钥通过Python Paramiko连接SSH
我正在使用 paramiko 通过SSH连接到服务器. 基本身份验证效果很好,但是我不明白如何与公共密钥连接. 当我与Putty连接时,服务器告诉我: Using username "root". Authenticating with public key "rsa-key@ddddd.com" Passphrase for key "rsa-key@ddddd.com": [i've inserted the passphrase here] Last login: Mon Dec 5 09:25:18 2011 from ... 我使用此PPK文件连接到它: PuTTY-User-Key-File-2: ssh-rsa Encryption: aes256-cbc Comment: rsa-key@dddd.com Public-Lines: 4 [4 lines key] Private-Lines: 8 [8 lines key] Private-
10 2023-05-19
编程技术问答社区
在一个进程启动后,使用命令行捕获其STDIN/STDERR/STDOUT?
谢谢!我的用户酶:我启动了一个冗长的交互式"配置"过程(例如"屏幕"下),然后意识到我需要始终回答"否",直到看到一个特定的关键字.似乎有时间手工做到这一点(并不是说我很容易错过关键字.) 因此,我似乎想将stderr/stdout的(副本的副本)送到过滤器, 并且还能够注入(控制台)过程的stdin, 启动后,使用命令行?有现成的解决方案吗? 以下工具似乎有所帮助.要捕获输出,请使用 strace -ewrite -p $PID 不是那么干净(显示诸如:write(#,)),但有效! 但是它说正确处理UTF8吗? 要重定向输出,做 之类的事情 printf '..input..' >/dev/pts/33 ,但尚不清楚如何找到合适的设备. 解决方案 在Linux中解决(显然是Linux特异性): reptyr -s PID 将过程附加到另一个终端和/或将其输入和输出视为管道. 其他解决方案 这是可能的,但不是很漂亮.该过程
12 2023-05-15
编程技术问答社区
使用Plink通过SSH在远程服务器上执行命令(Oracle SQL查询)
目前我正在这样做:start putty.exe,输入远程服务器为,然后选择SSH登录,然后选择输入服务器用户名和密码.然后,我必须输入sqlplus才能输入数据库,接下来,我将数据库用户和密码输入并运行选择查询.在我的PC上获取输出日志. 我想使用PLINK或任何其他工具来自动化该过程. 解决方案 您已经知道,您可以使用plink(从Putty软件包)自动执行远程命令执行. plink具有命令行开关-m,您用来指定A local 文件,并在远程服务器上执行命令. plink user@host -pw password -m command.txt 请参阅 > 下一步是自动化远程命令. 我不知道sqlplus.但源自使用SQL命令线,,我假设命令(将保存到 local file command.txt中)就像: sqlplus dbuser/dbpassword @query.txt 其中query.txt是远程文件,并在服务器上执行
0 2023-05-14
编程技术问答社区
读取电话时得到了一个负分
i仅使用SQL Developer连接到只读取访问的数据库.这是TNS连接.我使用tnsnames.ora,转发端口脚本和SQL开发人员. 过去,偶尔,连接时,我会收到一条错误消息 从读取的电话中获得了一个负号. 供应商代码0 如果我重新启动,它会消失.另一个朋友建议更改了对他有用的转发端口. 我最近升级到了一台新计算机,现在看来我正在始终收到错误消息.重新启动或更改转发端口根本无济于事. 端口转发脚本包含类似的内容 putty -L (port):(machine name):1521 有人有任何想法吗?谢谢. 解决方案 我的端口转发脚本转发多个端口.以某种方式将它们分成2个较小的文件,此错误消失了. 其他解决方案 检查您的sqlnet.ora文件并注释是否有如下的条目. tcp.validnode_checking = yes tcp.invited_nodes=(, ) 现
2 2023-05-13
编程技术问答社区
PHP / Bash。从OpenSSH密钥中创建带口令的PPK
我想创建一个为SSH授权创建密钥的PHP脚本. 我从 开始 exec("ssh-keygen -b 1024 -t dsa -N *pwd* -f *path-to-file* -q"); 创建私钥和公用配对.直到这里没问题;) 现在,我已经将OpenSl-Key转换为PPK-Format(在CMD中,而不是GUI中).如果有人对如何进行管理有想法,请让我知道. 谢谢 解决方案 如果您使用RSA键,则可以执行此操作(需要 phpseclib ): setPassword('password'); $rsa->loadKey('...'); //$rsa->setPassword(); // clear the password if there was one echo $rsa->getPrivateKey(CRYPT_RSA_P
4 2023-05-11
编程技术问答社区
使用SSHTool将Putty私钥转换为OpenSSH私钥
在我的Java项目中,我用服务器创建了一个SSH隧道.该隧道当前使用Putty Private Key和Plink进行身份验证.有人知道如何使用java sshtool 库库将putty键转换为openssh键或使用或使用SSHTool库使用腻子键创建SSH隧道?谢谢. 解决方案 JSCH仅接受Opensh键,而不是Putty创建键的格式.您必须将其转换.使用puttygen.exe转换为openssh,然后使用jsch中的openssh keyfile.
0 2023-05-11
编程技术问答社区
如何将ED25519私钥转换为Putty PPK?
我想将ED25519的私有密钥(由ssh-keygen命令生成)转换为PPK文件.但是我有错误. 无法加载私钥(未识别的密码名称) 有人可以帮我吗? 测试的OpenSSH版本:OpenSSH_7.6p1, OpenSSL 1.1.0g 2 Nov 2017和OpenSSH_7.6p1, OpenSSL 1.0.2n 7 Dec 2017(在CoreOS和Archlinux Docker容器上) 测试的腻子版本:0.70 64bit,0.70 32bit和snapshot(在Windows 10) 我的过程如下. 1.生成ED25519私钥 # ssh-keygen -t ed25519 -a 100 Generating public/private ed25519 key pair. Enter file in which to save the key (/root/.ssh/id_ed25519): Enter passphrase (em
14 2023-05-11
编程技术问答社区
从PPK文件创建一个PEM
因此,有很多关于如何使用puttyGen将PEM转换为PPK的教程.但是,我的问题是我的Windows机器拥有唯一的PEM副本,然后将其转换为PPK并将其删除.现在,我需要弄清楚如何将PPK转换为PEM,以便我的Mac可以ssh进入服务器.我仍然可以访问服务器,因此如果需要的话,我也可以制作一个新密钥,任何人都知道如何将PPK转换为PEM? 解决方案 安装 puttytools apt-get install putty-tools 生成pem文件形式ppk puttygen server.ppk -O private-openssh -o server.pem 文件 server.pem 文件将保存在同一位置 其他解决方案 如果您在Mac上,并且以前已安装 homebrew ,来自终端: $ brew install putty $ puttygen server.ppk -O private-openssh -o server.pem
2 2023-05-11
编程技术问答社区
SSH连接到Ubuntu开放的SSH-服务器需要先通过密码登录到(物理)服务器上
嘿, 我在运行SSH服务器的Ubuntu服务器上有一个奇怪的问题. 除了一件事外,所有配置都可以正常工作.启动后,我无法将其与服务器键一起连接到服务器. 我得到了一个"服务器拒绝我们的密钥".由于目前在虚拟框中运行的东西,我仍然可以通过直接登录.因此,我使用用户和密码登录,然后立即注销. 现在,我可以通过PUTTY和.OM键连接.我不知道为什么.我要么错过了某个地方的一些解释,要么用配置在某个地方搞砸了一些东西.如果有人可以将我指向正确的方向,我会很感激! sshd_config: # Package generated configuration file # See the sshd_config(5) manpage for details # What ports, IPs and protocols we listen for Port 22 # Use these options to restrict which interfaces/pro
0 2023-05-11
编程技术问答社区
PuTTY配置相当于OpenSSH的ProxyCommand
我只是想使用腻子与服务器获得SSH连接. 这些服务器仅允许从另一台特定服务器(以下示例中的" mysshproxyerser")传入SSH连接. 使用linux这对ssh -W命令都没有问题. 在油灰中,我找不到创建这种连接的选项. linux下的示例(~/.ssh/config): Host MyHostToConnectTo Hostname xx.xx.xx.xx User root Identityfile ~/.ssh/id_rsa ProxyCommand ssh MySshProxyServer -W %h:%p 有人知道如何在Putty中使用这种配置? 解决方案 如果要"跳跃主机",则使用"本地代理命令"是过度的.最新版本的腻子具有这种建筑物.转到 Connection>代理,在"代理类型" 中,选择" ssh到代理,并使用端口转发" .然后指定下面的中间服务器的详细信息(例如 hostName , po
0 2023-05-11
编程技术问答社区
如何在windows上使用'rhc'命令ssh进入openshift应用?
我正在尝试使用" RHC"命令 将SSH(从Windows)进入我的OpenShift应用 rhc app-ssh 我在此处遵循OpenShift指令: -to-rhc-app-ssh-command putty正在返回错误" putty命令行错误:未知选项" -v"然后失败.我的Google搜索表明PUTTY具有" -v"(小写)选项,可打开冗长.我不确定是否确定这是一个. 如果我使用Putty Gui,一切正常.我想弄清楚如何使用命令行进入我的OpenShift应用程序. 如何使用Windows上的" RHC"命令进入我的OpenShift应用程序? 解决方案 这是Windows的RHC中的一个错误.他们用分叉的版本修复了它. bugzilla报告 其他解决方案 首先,您需要生成私钥和公钥.您可以使用putgen来做到这一点. 然后,您应该将公共密钥导入到OpenShift帐户中. 然后将私钥与Putty一起
6 2023-05-11
编程技术问答社区
我怎样才能从我的windows机器上运行安装在linux机器上的OpenGL应用程序?
本着帮助的精神,这是我遇到和解决的问题,因此我将在这里回答问题. 问题 我有: 必须在Redhat或Suse Enterprise上安装的应用程序. 它具有巨大的系统要求,需要OpenGL. 它是一套需要在一台机器上一起操作的工具的一部分. 此应用程序用于按时间小时的时间密集型任务. 我不想坐在服务器室中工作. 那么,问题出现了...如何从远程Windows计算机运行此应用程序? 我将概述我的解决方案.随时评论替代方案.该解决方案也应适用于更简单的环境.我的情况有些极端. 解决方案 解决方案 我安装了两个软件: putty xming-mesa 梅萨部分很重要. 腻子配置 Connection->Seconds Between Keepalives: 30 Connection->Enable TCP Keepalives: Yes Connection->SSH->X11->Enable X1
0 2023-05-10
编程技术问答社区
OpenERP服务器错误 拒绝访问
安装ODOO后,我去了网络面板,询问创建新数据库. 当我输入详细信息时,我有错误.我可以成功更改主密码. 我已经在Putty上创建了数据库,并且在/etc/folder下没有openerp-server.conf文件. Odoo OpenERP Server Error Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 500, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 517, in dispatch result = self._call_function(
6 2023-05-08
编程技术问答社区
是否有一种方法可以配置腻子或其他终端以在下一个输出到STDOUT上刷新任务栏?
我专门为腻子寻找解决方案,但也对其他终端模拟器(例如Gnome终端)感兴趣. 我的想法是,如果我启动tar zxvf能够在终端模拟器上设置触发器,将其最小化,然后下一个输出到stdout/stderr,我会在任务栏内收到一份通知,这将是有用的.命令已经完成. 解决方案 这对我有用: echo -e "\a" 然后更新您的油腻的会话以使用视觉铃铛,并将"任务栏/字幕指示"设置为闪烁或稳定. 然后在您的焦油完成后运行此命令: tar xvzf file ; echo -e "\a" 这是一个屏幕截图:将这些设置保存为默认设置和/或您拥有的会话的设置
8 2023-04-27
编程技术问答社区
GitExtensions和PuTTY通过SSH在一个自定义端口上运行
我有一个git存储库,我使用类似的路径拉动: git pull ssh://username@host.com:1234/path/to/repository.git 当Gitextensions然后尝试使用PLINK从存储库中拉出时,就会调用: plink -T username@host.com:/path/to/repository.git 这最终失败了,因为它实际上是pinging端口#22,而不是#1234. 正确的呼叫将为 plink -T -P 1234 username@host.com:/path/to/repository.git 如果我在我的〜/.ssh/config中创建一个别名" hostcom",则它似乎可以正常工作(连接到#1234),如果我只是这样做: plink -T username@hostCom ,但是一旦我添加了GIT存储库的路径,它将再次到达#22. 我尝试的另一个选项是在Putty中创建会话
4 2023-04-22
编程技术问答社区