Serveo是一個(gè)SSH服務(wù)器,僅用于遠(yuǎn)程端口轉(zhuǎn)發(fā),可以快速將本地端口暴露在外網(wǎng)。官方聲稱其為Ngrok的絕佳替代品,對(duì)其優(yōu)點(diǎn)是使用現(xiàn)有的SSH客戶端,無需安裝客戶端即可完成端口轉(zhuǎn)發(fā)。當(dāng)用戶連接到Serveo時(shí),他們會(huì)獲得一個(gè)公共URL,任何人都可以使用它來連接到他們的localhost服務(wù)器。
使用
官方地址:http://serveo.net
使用要求:可以使用SSH,并且能連接到互聯(lián)網(wǎng),linux、windows等系統(tǒng)都行。
1、轉(zhuǎn)發(fā)HTTP
將本地3000端口穿透到公網(wǎng)中,使用命令:
#要轉(zhuǎn)發(fā)其它端口的自行替換 ssh -R 80:localhost:3000 serveo.net
第一次如果有提示,選擇yes即可,之后會(huì)為你隨機(jī)生成一個(gè)serveo.net二級(jí)域名,然后就可以使用瀏覽器間接訪問本地的localhost:3000了。
如果要指定二級(jí)域名,可以使用命令:
#這里默認(rèn)為moerats.serveo.net,自行替換即可 ssh -R moerats:80:localhost:3000 serveo.net
此時(shí)你就可以在外網(wǎng)使用moerats.serveo.net訪問你本地的localhost:3000了。
2、轉(zhuǎn)發(fā)SSH
將本地22端口穿透到公網(wǎng)中,使用命令:
#可以自行設(shè)置名稱,這里默認(rèn)rats ssh -R rats:22:localhost:22 serveo.net
接下來就可以登錄該內(nèi)網(wǎng)服務(wù)器了,使用命令:
ssh -J serveo.net root@rats
3、轉(zhuǎn)發(fā)TCP
將本地1492端口穿透到公網(wǎng)中,使用命令:
#可以自行設(shè)置公網(wǎng)端口,這里默認(rèn)1492 ssh -R 1492:localhost:1492 serveo.net
進(jìn)程守護(hù)
這里官方推薦使用AutoSSH,作用是一旦SSH連接超時(shí)或停止傳遞流量,則根據(jù)需要重新啟動(dòng)它。
1、安裝AutoSSH
#Debian/Ubuntu系統(tǒng) apt install autossh -y #centos系統(tǒng) yum install autossh -y
2、使用Systemd
只適用于CentOS 7、Debian 8+、Ubuntu 16+等。
#輸入你的轉(zhuǎn)發(fā)命令,去掉開頭的ssh即可 serveo="-R 80:localhost:3000 serveo.net" #將以下代碼一起復(fù)制到SSH運(yùn)行 cat > /etc/systemd/system/autossh.service <<EOF [Unit] Description=autossh After=network.target [Service] Type=simple Environment="AUTOSSH_GATETIME=0" ExecStart=$(command -v autossh) -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" $serveo Restart=on-abort [Install] WantedBy=multi-user.target EOF
開始啟動(dòng)并設(shè)置開機(jī)自啟:
systemctl start autossh systemctl enable autossh
最后更多的命令和使用可以直接查看官方文檔