文章前半部分是原理铺垫,不同学校可能不太一样。
复旦本校的可以省流直接看最后的 结论
参考文章
https://midaho.xin/article/393
情况简介
复旦大学的服务器连接了内网,但还没有通过校园网验证,导致服务器没能连上网。且由于服务器是远程操控,因此没有可视化界面,服务器端的验证全靠命令行实现(其他学校也可以参考本过程)
具体操作
在服务器的终端上,先wget任意一个自己日常能正常连接的网页,得到认证界面的IP地址:
wget www.baidu.com
能看到后面Location:后面有一串链接,这个链接就是校园网的认证地址。
复制该url地址“?”之前的地址到本地的浏览器打开并按F12打开控制台(这里以Chrome为例,好像其他人用FireFox的比较多)。
找到网页需要的一系列参数的‘name’,比如action,ac_id,user_ip等等,用户名的name是username, 密码name是password,这些都要记一下。
结论
然后在服务器终端中输入以下命令:
curl --insecure --data "action=login&ac_id=1&username=xxx&password=xxx&user_ip=xxx&nas_ip=&user_mac=&url=&phone=1" http://10.250.3.66/srun_portal_pc.php
其作用是向认证网址“http://10.250.3.66/srun_portal_pc.php”发送前面–data的参数,注意需要修改命令行中的xxx,替换为自己的学号、密码和本服务器ip地址,其他的参数好像不需要管,系统会自动匹配,最主要的参数就是用户名和密码以及服务器的ip地址。
再尝试ping百度就能ping通了,表示校园网认证成功: