标签: ssh

具有永久 ssh 连接的 bash 脚本

我使用运行的 bash 脚本

/usr/bin/ssh -f -N -T -L8888:127.0.0.1:3306 serveradmin@34.324.234.23
Run Code Online (Sandbox Code Playgroud)

但是,当我运行 bash 脚本时,它会等待.. 我看到连接出现但脚本没有退出.. 就像它在等待 SSH 进程完成一样,因为当我手动杀死它时,bash 脚本完成为好。

任何想法如何解决这个问题?

更新: 我已经编写了这个脚本..cron 进程是一个变成僵尸的进程.. 实际的脚本运行得很好,抱歉,使用 ps -auxf 我得到:

root       597  0.0  0.7   2372   912 ?        Ss   Jul12   0:00 cron
root      2595  0.0  0.8   2552  1064 ?        S    02:09   0:00  \_ CRON
1001      2597  0.0  0.0      0     0 ?        Zs   02:09   0:00      \_ [sh] <defunct>
1001      2603  0.0  0.0      0     0 ?        Z    02:09   0:00      \_ [cron] <defunct>
Run Code Online (Sandbox Code Playgroud)

当我杀死 ssh 时,不复存在的人消失了..为什么他们会不复存在?

scripting linux ubuntu ssh bash

3
推荐指数
1
解决办法
5624
查看次数

/etc/ssh/ 里面的键有什么用?

任何人都可以解释一下 /etc/ssh/ 中的密钥的用途吗?

ssh ubuntu-9.10

3
推荐指数
1
解决办法
144
查看次数

为什么 ssh 有时可以使用 -vvv 而不是不使用?

-v最大限制为 3-4 控制ssh命令的详细程度。

我在代理后面,我有 ssh 设置来使用代理,所以可能是这种情况,但我注意到

ssh foo@domain.com -vvvv比 更可靠ssh foo@domain.com。叫我疯了,但如果我不指定详细程度,有时它只是无法连接。如果我确实指定了详细程度,它将提供更多信息并进行连接。

这种行为有什么解释吗?对我来说,这是非常一致的行为。冗长是否以某种方式改变了 ssh 连接和返回数据的方式的变量,从而迫使它工作?

ssh

3
推荐指数
1
解决办法
8851
查看次数

尝试通过 SSH 使 X11 正常工作:连接被服务器拒绝


在本地 Xterm 中使用 Cygwin/X11 Launch 命令进行 SSH:

xterm -e ssh -Y -v -l MyUser myserver.mydomain.com &

登录后,我跑了

setenv 显示 myclient.mydomain.com:0.0

当我尝试启动 Xterm 时,我得到:

Xlib:服务器拒绝连接到“myclient.mydomain.com:0.0”
Xlib:未指定协议

xterm Xt 错误:无法打开显示:myclient.mydomain.com:0.0

在另一台服务器上,我在不运行 setenv 的情况下启动新的 xterm 窗口没有问题。
该服务器上的“echo $DISPLAY”返回“localhost:11.0”

如果我尝试在另一台服务器上使用它,我会得到以下信息:

$ setenv DISPLAY localhost:11.0
$ xterm
xterm Xt 错误:无法打开显示:localhost:11.0

我想我错过了一些非常基本的东西,但我不确定它是什么。


编辑:
尝试不设置 $DISPLAY:

这是结果

$ echo $DISPLAY
DISPLAY:未定义的变量。
$ xlogo
错误:无法打开显示:

还是行不通 :-(


再次编辑:以上是直接登录。在尝试运行 xlogo 之前,我没有删除 $DISPLAY 或更改它

linux ssh cygwin x11forwarding

3
推荐指数
1
解决办法
5万
查看次数

如何使用 Capistrano 在服务器上执行命令?

我有一个非常简单的任务叫做 update_feeds:

desc "Update feeds"
task :update_feeds do
  run "cd #{release_path}"
  run "script/console production"
  run "FeedEntry.update_all"
end
Run Code Online (Sandbox Code Playgroud)

每当我尝试运行此任务时,都会收到以下消息:

[out :: mysite.com] sh: script/console: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我想这是因为我不在正确的目录中,但正在尝试

run "cd ~/user/mysite.com/current"
Run Code Online (Sandbox Code Playgroud)

代替

run "cd #{release_path}"
Run Code Online (Sandbox Code Playgroud)

也失败了。手动(通过 ssh)运行完全相同的命令非常有效。为什么 capistrano 不能正确cd(更改目录)到站点目录来运行命令?

谢谢!

ssh deployment ruby-on-rails capistrano

3
推荐指数
2
解决办法
2万
查看次数

GPG 使用 ssh-agent 加密解密

我ssh经常使用并已ssh-agent设置。

如何使用ssh密钥gpg加密文件?

编辑:这似乎是不可能的。为什么?ssh可以加密流量,那么为什么不能加密文件呢?

ssh gpg

3
推荐指数
1
解决办法
2235
查看次数

将 ftp 安全传输到 Ubuntu 上的特定目录?

我可以设置吗

  • 某人(不是系统上的当前用户)的安全 ftp
  • 适用于 Ubuntu 上的 2 个不同目录
  • 在public_html里面?

我现在不想给用户纯 ssh 帐户。

任何其他上传、下载、删除文件的安全方式也很好。nginx可用而不是 apache2。

ubuntu ssh file-transfer sftp scp

3
推荐指数
1
解决办法
1830
查看次数

如何通过 sudo 以另一个用户身份通过​​ ssh 运行 GUI 应用程序

我在我的服务器上配置了 ssh,有时我必须在它上面运行一些图形应用程序。当我与-X选项连接时,它工作得很好。我可以运行,例如google-chrome。但是,如果我将用户更改为sudo -i -u other_user,则无法以该用户身份运行 GUI 应用程序。

我认为它与环境和显示有关,但不知道该怎么做。我尝试添加-E,但随后收到错误消息,提示我无法将其与-i. 如何以其他用户身份通过​​ ssh 运行 GUI 应用程序?

ssh sudo

3
推荐指数
1
解决办法
4258
查看次数

使用替代 shell 进行 SSH 连接

我们的系统上有一个共享帐户,它有登录 shell tcsh。我更喜欢 bash,并希望在我从我的个人帐户 ssh 进入时让它运行 bash,但将 tcsh 留给使用该帐户的任何其他人。我知道我可以设置一些东西来反映我 ssh 的 IP,但是有没有任何(笨拙的或非笨拙的)方法可以根据运行 ssh 的用户来做到这一点?或者一种运行 ssh 的方法来让它给我一个交互式 bash 会话?

ssh login shell

3
推荐指数
1
解决办法
2332
查看次数

为什么我无法登录到网络错误的 linux 服务器:连接超时

嘿伙计们,我在通过 ssh 连接到 Red Hat Enterprise linux 服务器时遇到问题,出现以下错误:“网络错误:连接超时”

服务器位于我应该可以访问的 VLAN 上,我可以 ping 它但我无法通过腻子或 WinSCP 连接到它,它侦听默认端口 22,我有一个动态 IP,每次我必须连接时到服务器,一位拥有静态 IP 的同事登录到它并将我的 IP 添加到 hosts.allow 文件,它起初工作正常,但最近它停止工作。我确定这不是 hosts.allow 问题,因为当我的 ip 不被允许时,我收到了不同的错误消息,例如:“服务器连接意外关闭”并试图在 5 秒内重新连接。现在错误是不同的,我认为它必须对网络的防火墙做些什么,我只是不明白为什么我以前可以使用不同的 IP 登录,现在我不能。

linux ssh redhat

3
推荐指数
1
解决办法
2万
查看次数