Articles of ssh

如何configurationnginx通过subdomain.domain.tld:80使ssh服务器可用

我想通过端口80上的子域使端口22上的ssh服务器可用。 我认为这应该是这样的: server { listen ssh.domain.tld:80; server_name ssh.domain.tld; location / { proxy_pass http://localhost:22; } } 但它不会工作。 nginx会接受这个并从这个configuration开始,但是我只能从ssh.domain.tld:80得到空的响应。 我错过了什么?

jenkins运行phing exectask。 Exectask使用ssh代理转发。 没有权限。 如何解决?

什么地方出了错 我有一个Ubuntu 12.10服务器。 我在同一台服务器上安装了Jenkins和Nginx。 Nginx应该为服务器文件提供的/ var / virtual具有www-data的权限设置:www-data 用户jenkins正在运行Jenkins软件。 这是我在phing build.xml中编写的目标 <target name="gitclone"> <echo msg="gitclone ${environment.branch} branch code to ${environment} environment" /> <exec command="ssh -A ${host-used} 'git clone -b ${repository-uri} ${environment.branch} ${environment.sitedir}${build.time}'" outputProperty="result" escape="false"/> <echo msg="${result}" /> <echo msg="update all the submodules after gitclone" /> <exec dir="${environment.sitedir}${build.time}" command="ssh -A ${host-used} 'git submodule update –init –recursive'" […]

ssh路由到子域名

我有一个服务器设置,我ssh进入,我运行gitlabdocker上的容器,并通过nginx使用子域路由的http和httpsstream量。 这工作正常,但我想要做一些类似的ssh,以便我可以使用ssh + git。 目前ssh是暴露在10022上的主机,但是我不想打开第二个ssh端口,想要我想做的就是能够做到这一点: # To ssh into the server ssh example.com # To use ssh+git on gitlab git clone ssh://git@gitlab.example.com/me/project.git 我猜测,我想要的是一些方法来检查使用的主机名,并转发到适当的内部端口,类似的方式,Nginx的,它为html trafficw,但我不知道如何开始。 这是可能的,如果有的话,是否有任何指导说明如何做到这一点?

ppa:ondrej / php5弃用后的“问题”

今天我正在将我的LEMP堆栈上的PHP 5.5升级到版本5.5.35。 升级后,我收到一个屏幕上的消息,回购ppa:ondrej / php5已被弃用,如果我想继续接收PHP更新,我应该移动到ppa:ondrej / PHP现在包括PHP 5.5,PHP 5.6和PHP 7.0在一个地方 。 以前这些版本是在不同的回购。 我遵循了Ondřej的build议,我跑了: sudo add-apt-repository ppa:ondrej/php 接着: sudo apt-get update sudo apt-get upgrade –show-upgraded 一切顺利,除了两个软件包被阻止: php-pear和pkg-php-tools 。 那当然会发生,当包依赖关系改变,所以我运行: sudo apt-get install php-pear pkg-php-tools 然后,我收到一条消息,意味着将会安装以下软件包: php-cli php-common php-xml php7.0-cli php7.0-common php7.0-json php7.0-opcache php7.0-readline php7.0-xml 马上我觉得这里有什么不对 为什么我在运行PHP 5.5时需要PHP 7.0包? 不过,我select了YES,显然一切都很顺利。 服务器正在运行,没有错误或confilcts,我知道。 然后,我很好奇,我检查了我运行的PHP版本是什么? php -v 输出是: PHP 7.0.6-1+donate.sury.org~trusty… […]

在新的Ubuntu 16.04服务器上使用SSL脚本编写新的nginx实例的正确方法是什么?

我有这个到目前为止,但我错过了一些像获取cron作业脚本的东西。 不想以root身份执行此操作。 所以我假设可以做更多的事情来同时build立第一个用户。 脚本需要是幂等的(如果以前使用相同的参数运行,可以反复运行而不会冒险改变任何东西)。 singledomaincertnginx.sh: #!/bin/bash if [ -z "$3" ]; then echo use is "singledomaincertnginx.sh <server-ssh-address> <ssl-admin-email> <ssl-domain>" echo example: "singledomaincertnginx.sh user@mydomain.com admin@mydomain.com some-sub-domain.mydomain.com" exit fi ssh $1 "cat > ~/wks" << 'EOF' #!/bin/bash echo email: $1 echo domain: $2 sudo add-apt-repository -y ppa:certbot/certbot sudo apt-get update sudo apt-get upgrade -y sudo apt-get install […]

passthru不工作在pdftk

我是新的,所以ssh和terminal命令我使用堆栈溢出我的Web服务器(Linus Cent-Os专用虚拟服务器)上安装pdftk。 虽然最初的问题,因为我所有的经验是GUI,但不知何故按照说明,我成功地安装了pdftk 现在当我input命令whereis pdftk 答复是 pdftk:/ usr / bin / pdftk / usr / local / bin / pdftk / 当我按照说明进行操作时,最后一步是将文件夹复制到/ usr / local / bin /成功。 现在当我发出命令pdftk –version它运行成功,返回版本信息。 在我的PHP,当我尝试使用这个 passthru('/usr/local/bin/pdftk –version') nothis显示 有人可以指导我怎么办?

将SSH文件传输到本地计算机时,将文件传输到本地计算机

可以通过SSHlogin到远程shell,并且可以使用FTP应用程序通过SFTP使用相同的凭据通过SSHlogin。 那么怎么样,当通过SSHlogin到shell时,从远程主机发起文件传输到本地主机? 我知道我可以使用scp或rsync来移动这些文件,但是需要进行身份validation,而不是我始终可以从主机执行的操作。 从我有限的理解,现有的SSH连接是所有应该需要的,因为SSH具有文件传输能力 。 谢谢。

ssh-agent像任何dotfile的行为一样

我正在尝试构build(或者发现它是否存在),让我可以将我的点文件作为我访问的服务器,就像ssh-agent为我的密钥所做的那样。 我花了很多时间和EC2一起工作,当我启动一个新的实例时,我不喜欢没有我的点文件(主要是.vimrc,.gitconfig和我的别名)。 我保留所有我的dotfiles下git和公开可用,但这是不够的解决scheme有几个原因: 我ssh的生产主机,我不能安装混帐,不能轻松访问互联网。 我不控制AMI的运行,所以我不能烘烤我的点阵文件,而且我通常会共享Ubuntu或root用户,很less有一个专用的用户名在主机上(所以我不能克隆和离开我的dotfiles那里)。 现在我很高兴能够build立这个工作只有一个级别的SSH。 那就是A – > B – > C(如果只有B可以访问点文件,C会丢失)。 我正在想像这样的事情: ssh -t -R 1234:localhost:1234 user@server 'export USE_DOTFILES_AGENT=1 ; exec $SHELL' 有一些服务在我的本地主机1234点文件,所以我的问题是: 让删除端的程序从套接字读取它们的点文件的最好方法是什么(尽可能在另一端放置任何必要的东西)。 编辑:而apmasell的答案是有帮助的我没有想到这样的高科技解决scheme。 可能更多的东西是从那个端口进入/ tmp / _vimrc的wget行,然后让vim以某种方式加载(通过运行alias vim=vim <flag for where to find vimrc> )。

Shell脚本从脚本input密码

我正在尝试编写一个shell脚本来将文件传输到运行一个超简单的sftp服务器的远程windows机器上。 它是从coreftp的轻型版本。 所以我没有select使用公钥authentication。 从Linux结束其非英特尔平台的精简版,所以,如果我想使用“期待”,我不能安装expect / tcl / tk。 这是为了testing目的,我想从Shell脚本input密码。 有没有方法可用? #!/bin/sh HOST='10.xxx' USER='user' PASSWD='passwd' sftp $USER@$HOST 是不是可以不使用任何工具从shellcriptinput密码?

不带GUI的Javascript的SSH

我想做的是一个基于Ubuntu的操作系统,它将使用networking 我想使项目可点击。 如果你点击一个应用程序图标,应用程序将打开。 我试图使用WebSockets,但它们不是那么容易使用。 我尝试PHP,与exec(),popen(),系统(),我试过ssh2函数。 不工作或太慢。 我不能像shellinabox那样使用GUI,因为我只想连接到本地主机并运行一些像“firefox”或“sensible-browser”或“gedit”这样的命令。 这就是为什么我需要帮助。 我search了一整天,什么都没发现。 我正在寻找一个简单的解决scheme。 只是一个连接,只是一些命令。 没有额外的GUI,只是简单的事情! 谢谢,Amanush。 ——————————————- [第二个问题(编辑)] ———— 我做了我自己的协议,它运作良好! 最后一个问题。 我的html: <html> <body> <a href="cloudje:firefox">Open firefox</a> </body> </html> 我的.desktop文件: [Desktop Entry] Encoding=UTF-8 Version=1.0 Type=Application Terminal=false Exec=/usr/bin/cloudjerun -c gedit Name[en_US]=Gedit Comment[en_US]=Small, easy-to-use program to access iTunesU media Name=TunesViewer Comment=Small, easy-to-use program to access iTunesU media Icon=/usr/share/icons/hicolor/scalable/apps/tunesview.svg Categories=Application;Network; MimeType=x-scheme-handler/cloudje; […]