如何把电脑变成服务器然后使用远程登录
itgoyo opened this issue · comments
个人比较喜欢linux,还有Mac OS环境,但是由于公司设备原因只能使用Windows设备,但在上面使用起来极其不顺手,所以想到了这样一种远程访问的方式
当然了,市面上已经有很多好的产品了例如Teamviewer
,这种工具,但是我在使用这个软件的时候感觉到有些卡顿或者说是延迟,对于强迫症患者的我,使用起来极其不舒服,而且我平时使用也基本用不到图形化界面,所以想办法使用ssh
连接即可。
但是用家里电脑作为一个服务器有一个问题,就是ip地址不是公网地址,导致外网的人想访问,类似我在公司想使用自己电脑的时候是不能访问到的,所以我们先要把我们电脑的地址搞成公网的地址,用到的软件ngrok
官网地址 https://ngrok.com/
使用方法
-
Download ngrok
-
unzip /path/to/ngrok.zip
-
./ngrok authtoken xxxxxxxxxxxxWcfNsonk2xxxxxxxxxxxxxx
这样子就可以在后台查看到相应的公网地址
然后在电脑主机(也就是作为服务器的电脑)运行一下代码
./ngrok tcp 22
然后就可以参看到地址了
Session Status online
Account 浮 生 甲 第 (Plan: Free)
Version 2.2.8
Region United States (us)
Web Interface http://127.0.0.1:4041
Forwarding tcp://0.tcp.ngrok.io:12345 -> localhost:22
然后远程电脑可以使用客户端putty
或者fianlshell
等ssh工具登录到远程主机,对于新人个人比较推荐使用finalshell
主机的地址
ssh myuser@0.tcp.ngrok.io -p12345
-p 其实是端口号上面端口号就是 12345
连接成功之后,他会询问你用户名还有密码的,验证成功之后就可以正常远程登录了,祝你成功。
更新!!!现在已经切换成此种方式
貌似端口号每次启动都不会改变,这样子方便许多
软件更换为Sunny-Ngrok
自己申请账号,然后购买免费的香港服务器
-创建tcp服务
软件下载地址:https://www.ngrok.cc/download.html
使用方法
./sunny clientid 隧道id(id自己参看自己创建的tcp服务后台可以查看)
启动多个隧道
./sunny clientid 隧道id,隧道id
效果:
unny-Ngrok 官 网 www.ngrok.cc (Ctrl+C 退 出 )
隧 道 状 态 在 线
版 本 2.1/2.1
转 发 tcp://free.idcfengye.com:12345 -> 127.0.0.1:22
Web界 面 127.0.0.1:4040
# Conn 3
Avg Conn Time 0.00ms
使用ssh
软件登陆的时候记得不要带上tcp,只要写后面的域名即可还有相应的端口号即可
感觉这个比之前的ngrok
搭建起来和链接起来比较方便
开机自启动服务脚本
#!/bin/sh -e
### BEGIN INIT INFO
# Provides: ngrok.cc
# Required-Start: $network $remote_fs $local_fs
# Required-Stop: $network $remote_fs $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: autostartup of ngrok for Linux
### END INIT INFO
NAME=sunny
DAEMON=/usr/local/bin/$NAME
PIDFILE=/var/run/$NAME.pid
[ -x "$DAEMON" ] || exit 0
case "$1" in
start)
if [ -f $PIDFILE ]; then
echo "$NAME already running..."
echo -e "\033[1;35mStart Fail\033[0m"
else
echo "Starting $NAME..."
start-stop-daemon -S -p $PIDFILE -m -b -o -q -x $DAEMON -- clientid 隧道id || return 2
echo -e "\033[1;32mStart Success\033[0m"
fi
;;
stop)
echo "Stoping $NAME..."
start-stop-daemon -K -p $PIDFILE -s TERM -o -q || return 2
rm -rf $PIDFILE
echo -e "\033[1;32mStop Success\033[0m"
;;
restart)
$0 stop && sleep 2 && $0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit 0
文件保存为xx.sh文件,上面的隧道id改成你自己的id
添加到Mac开机自启动服务
最后ngrok不仅仅可以外暴露22端口,也能暴露其他自定义端口
高科技用法
- 远程开机卡 (在外面使用易微联远程控制)
- 天猫精灵 (在家里使用声音控制)【天猫精灵到底可以有多酷】
如果你觉得电脑一直开机比较费电不好的话,那么下面我给你们介绍一下一些黑科技用法了
手机控制电脑开关(易微联app、微信公众号易微联、小程序易微联三个都能远程控制
天猫精灵控制电脑开关(天猫精灵打开办公室插座)
这个远程开机卡,打开和关闭是不用进入BIOS的,感觉就和你的进入休眠和唤醒一样,这是太鸡儿好用了,当然你不舍得花钱的话,直接使用TeamViewer吧,设置开机启动,然后设置无人值守密码就行,对了你如果被检测出商业用途5min断线的话,给我私信,我有了固定ip值,还有防止断线的版本(支持Mac和Windows版本)
为什么是办公室插座呢,因为天猫精灵现在还不支持自定义命名,所以为了区分我的卧室插座,我把他名字改成了办公室插座,当然还有场景很多名字可以取的,这个由你喜欢。
【远程开机卡】TB上70+块钱
frp
关于这个是很多知友还有V友说的,下次有时间再试试这个
ngrok 一直ssh连不上,已经fq了啊
@zwkcoding 不好意思呀,刚刚才看到你的邮件,你邮件上问我说链接不了 ssh 然后可能也给我发了截图,但是我看不到你的截图内容
其次就是,链接 ssh 当初我链接成功是用了 fianlshell
这个软件链接上的,我不确定你是用终端链接的还是用工具链接的,如果是工具你看看是不是端口号不对,或者协议不对的原因,这个只能去排查了,我其实也不是搞渗透的,就是当初起兴乱玩的。
@itgoyo 这个邮件不是我发的。
我的问题解决了,解决方法是远程先登录一台墙外的服务器,然后在服务器上远程 ssh 登录 ngrok 主机。
其实,我也不这么用了,还是 TeamViewer 来得快