首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命令在命令行中工作时,Systemd SSH隧道服务失败

命令在命令行中工作时,Systemd SSH隧道服务失败
EN

Stack Overflow用户
提问于 2020-06-27 08:27:24
回答 1查看 97关注 0票数 1

我一直在尝试设置一个SSH反向隧道Systemd服务,以便自动将我的非公共IP计算机暴露在SSHing的互联网上。我有两个不同的服务,一个指向我自己的服务器(另一台有公共IP的计算机),运行正常,另一个试图使用serveo.net (通过ssh客户端的TCP隧道的免费服务)。我的服务在我自己的服务器上工作得很好,但在Serveo上却失败了。

我的服务定义如下:

代码语言:javascript
复制
[Unit]
Description=Setup a remote tunnel to serveo.net
Wants=network-online.target
After=network-online.target
StartLimitIntervalSec=0

[Service]
User=ssh-tunnel
Group=ssh-tunnel
ExecStart=/usr/bin/ssh -T -o ServerAliveInterval=60 -i /var/lib/ssh-tunnel/id_rsa -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ExitOnForwardFailure=yes -R myalias:58227:localhost:22 serveo.net
Restart=always
RestartSec=60

[Install]
WantedBy=multi-user.target

当在终端执行相同的命令时,可以正常工作:

代码语言:javascript
复制
sudo -u ssh-tunnel -g ssh-tunnel /usr/bin/ssh -T -o ServerAliveInterval=60 -i /var/lib/ssh-tunnel/id_rsa -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ExitOnForwardFailure=yes -R myalias:58227:localhost:22 serveo.net

我能看到的我自己的服务器和Serveo之间唯一的行为差异是Serveo有一种交互式的命令界面。

有没有人在Systemd服务上遇到过类似的问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-01 04:08:32

Serveo需要一个交互式shell。您想要添加

Service StandardInput=tty-force

强制使用与serveo配置一起工作的shell

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62604573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档