ssh 有时候真的就是连不上了,然后是没什么然后了呢. 或者手残改错配置然后重新sshd了.

所以这时候需要备用的远程管理工具.nc是最好的选择,一般服务器都是 内网的,如果跳板机也管理不了呢.

安装 (服务端 客户端 都装)

yum install nc -y
apt install netcat -y

这里你需要知道的一些事情

理想中的 nc -l -vv -p 5555 -e /bin/bash

在Linux的大部分发行版中都默认编译了nc,但也许是出于安全考虑,发行版中默认编译的nc往往没有-e选项(没有define一个

GAPING_SECURITY_HOLE常量),也就是说我们不能通过-e选项绑定目标的shell,使得我们在利用上受到限制.

# 绕过这个问题
mknod /tmp/backpipe p 2>/dev/null
/bin/bash 0</tmp/backpipe | nc -l 127.0.0.1 -vnp 5000 >/tmp/backpipe

配置

#!/bin/bash
mknod /tmp/backpipe p 2>/dev/null
ps -C nc >/dev/null
if [ $? -eq 1 ] ;then
/bin/bash 0</tmp/backpipe | nc -l 127.0.0.1 -vnp 5000 >/tmp/backpipe &
fi

用crontab -e 添加 一个定时任务,每分钟检查一次

* * * * * bash /root/ncloop.sh

服务端使用 nps打洞 做转发到内网机器即可.

 root@MbookV1:/mnt/c/Users/makeit/Documents# nc 服务器ip 5555
ls
AppFile
assistant
baiduRSapi
cloudflare.sh
Desktop
Documents

其它再补充吧,吃饭了

05-26 23:11