Vpn
VPN 啟動後啟動 SSH 伺服器
我在 Ubuntu 14.04 和 OpenSSH 上執行 OpenVPN 伺服器。
我將 SSH 伺服器配置為綁定到我的 VPN 介面上的 IP 地址。一旦我的機器啟動,綁定到該 IP 就會失敗。
一旦我登錄,可以看到
netstat
沒有sshd
在聽。我能夠重新啟動sshd
,機器將開始正常收聽。我的 VPN 上的 IP 是我配置sshd
監聽的唯一 IP。開機時:
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:
sshd[3481]: Set /proc/self/oom_score_adj from 0 to -1000 sshd[3481]: Server listening on 10.8.0.1 port 22.
我最好的猜測是
sshd
在我的 VPN 啟動並執行之前開始。有沒有一種方法可以確保sshd
之後開始,以便正確綁定?關於做什麼或檢查的任何建議?
我找到了解決方案。
在 OpenVPN 配置文件
/etc/openvpn/server.conf
中,您可以指定要在up上執行的腳本。如果您查看 OpenVPN 手冊頁man openvpn
,您會看到--up cmd
。在/etc/openvpn/server.conf
配置文件中,我添加了一行:up "/etc/openvpn/up.sh"
該文件是我創建的,將在 VPN 啟動時執行。現在,我的看起來像這樣:
#!/bin/sh logger VPN is UP service ssh restart
現在,每次我的 OpenVPN 伺服器啟動時,它也會重新啟動 OpenSSH 伺服器。同樣,
--down cmd
如果我希望在伺服器關閉時執行腳本,我也可以在伺服器配置文件中使用和指定一個文件。您可以在 OpenVPN 手冊頁中閱讀有關這些內容的更多資訊 -
man openvpn