首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VPN启动后启动SSH服务器

问VPN启动后启动SSH服务器
EN

Unix & Linux用户
提问于 2014-07-17 03:17:28
回答 2查看 3.5K关注 0票数 4

我正在Ubuntu14.04和OpenSSH上运行一个OpenSSH服务器。

我将我的SSH服务器配置为绑定到我的VPN接口上的IP地址。一旦我的机器启动,绑定到那个IP就失败了。

一旦我登录,就可以用netstat看到sshd没有在监听。我能够重新启动sshd,机器将开始正确地监听。我的虚拟专用网上的IP是我配置sshd监听的唯一IP。

在Boot:

代码语言:javascript
复制
sshd[1016]: Set /proc/self/oom_score_adj from 0 to -1000
sshd[1016]: error: Bind to port 22 on 10.8.0.1 failed: Cannot assign requested address.
sshd[1016]: fatal: Cannot bind any address.

重新启动SSH:

代码语言:javascript
复制
sshd[3481]: Set /proc/self/oom_score_adj from 0 to -1000
sshd[3481]: Server listening on 10.8.0.1 port 22.

我最好的猜测是,sshd在我的虚拟专用网启动和运行之前就已经启动了。是否有一种方法可以确保sshd在启动之后才能正确绑定?

对该做什么或检查有什么建议吗?

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2014-07-18 03:26:28

我找到了解决办法。

在OpenVPN配置文件/etc/openvpn/server.conf中,可以指定要运行的脚本。如果您查看OpenVPN手册页man openvpn,您将看到--up cmd。在/etc/openvpn/server.conf配置文件中,我添加了一行:

代码语言:javascript
复制
up "/etc/openvpn/up.sh"

这个文件是我创建的,将在VPN启动时执行。现在,我的看起来是这样的:

代码语言:javascript
复制
#!/bin/sh
logger VPN is UP
service ssh restart

现在,每当我的OpenVPN服务器启动时,它也会重新启动OpenSSH服务器。同样,如果希望在服务器关闭时执行脚本,我还可以使用--down cmd并在服务器配置文件中指定一个文件。

您可以在OpenVPN手册页- man openvpn中阅读更多有关这些信息的信息。

票数 1
EN

Unix & Linux用户

发布于 2014-07-17 04:20:16

看起来ssh用的是暴发户,但openvpn不.您也许可以通过这样做来强迫ssh延迟启动,但是它还没有经过测试(我不想破坏我的安装):

代码语言:javascript
复制
update-rc.d ssh defaults 99

因为它是未经测试的:注意事项

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

https://unix.stackexchange.com/questions/144992

复制
相关文章

相似问题

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