IPV6远程访问
一、使用ssh登录服务器
具体怎么做可以看我上一篇文章01安装linux
二、查看ipv6地址
使用ifconfig命令查看服务器有没有获得ipv6地址
enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.3.3 netmask 255.255.255.0 broadcast 192.168.3.255
inet6 2409:0573:502c:6710:e115:886:719e:a946 prefixlen 64 scopeid 0x0<global>
inet6 fe80::da58:63ec:6cdf:f02 prefixlen 64 scopeid 0x20<link>
ether c4:54:44:8c:cf:c3 txqueuelen 1000 (Ethernet)
RX packets 119513034 bytes 176736013788 (164.5 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 18088183 bytes 7581032621 (7.0 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
接下来可以看到服务器的网卡信息,找到inet6开头的行,就是服务器的ipv6地址,但是ipv6分为公网ipv6和内网ipv6,移动是2409开头,联通是2408,电信是240e,其余的话是内网ipv6,需要获得公网地址才可以使用外网访问。如果没有公网ipv6地址,推荐将服务器的网线连接到光猫后面,如果还是没有,问下运营商。
在windows的cmd窗口上使用ssh user@ipv6命令尝试ssh使用ipv6地址登录。
三、关闭防火墙
- 在光猫上找到光猫的ip地址比如
192.168.1.1和光猫的型号。 - 百度搜索该光猫型号的超级密码,搜不到就问运营商,问装宽带的师傅。
- 打开浏览器输入光猫的ip地址,输入找到的超级密码和账户,登录。
- 找到防火墙的相关设置,尽可能的关闭所有防火墙。
- 找个安卓手机,不要连接wifi,用数据流量,安装JuiceSSH,尝试用外网远程登录服务器。或者用手机开热点给笔记本电脑,尝试ssh登录。
四、ipv6动态域名
ipv6地址太长了,不好记,而且重启光猫或者服务器后ipv6地址就会发生变化,所以使用域名来代替ip地址。
- 访问http://www.meibu.com,点
注册注册一个动态域名,记好域名和密码。 - ssh登录服务器,运行
vim ip.sh如果提示vi命令未找到则sudo apt install vim安装vim。 - 在vi中输入
:set paste后回车,切换到粘贴模式。 - 复制以下内容
内容
DomainName=domain
DomainPassword=password
old=no
while :
do
sync
new=$(ip a |grep inet6)
if [ i:"$new" != i:"$old" ]
then
echo "$new" > ips6.ini
wget "http://v6.meibu.com/v6.asp?name=$DomainName&pwd=$DomainPassword" -O /dev/null
sleep 30
netip=$(host $DomainName)
localip=$(echo "$new" |grep ${netip##* })
localip=${localip#*i}
localip=${localip%%6*}
if [ "i$localip" != "inet" ]
then
echo "no" > ips6.ini
else
old="$new"
fi
fi
sleep 61
done
- 按下
a进入编辑模式,shift+鼠标右键,复制到vim中。 - 修改第一行和第二行的域名和密码。
- 按下
esc后输入:wq后回车保存并退出。 - 运行
host baidu.com看看host命令能不能用,如果不能则sudo apt install host。 - 运行
chmod 0755 ip.sh为脚本添加执行权限。 - 运行
./ip.sh &。 - 尝试
ssh user@domin使用域名登录服务器。
五、配置防火墙
之前在光猫中关闭了防火墙,如果没有防火墙还是容易遭到入侵,服务器本来就自带防火墙,我们来配置一下。
创建一个脚本文件,运行vim ip6tables.sh,内容为
#清空所有规则
ip6tables -F
#允许已经建立的连接
ip6tables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#丢弃除22端口以外的所有数据包
ip6tables -A INPUT -p tcp ! --dport 22 -j DROP
运行chmod 0755 ip6tables.sh为脚本赋予执行权限,运行sudo ./ip6tables.sh执行脚本。
这个脚本只配置了ipv6防火墙,且仅仅放行了ssh端口,对于ipv4地址可以不用配置防火墙,因为必须在内网才能通过ipv4地址访问,所以在外网无法通过ipv4攻击到服务器的。
六、开机自启
上面的两个脚本在重启后就需要手动运行,设置一个开机启动脚本
pwd查看当前路径sudo vim /etc/rc.local
内容为
#注意/home/user是pwd命令获得的路径
/home/user/ip.sh &
/home/user/ip6tables.sh
chmod 0755 /etc/rc.local
linux文件共享
请看下一篇:linux文件共享