关于虚拟机纯命令行centos解决web上网认证的解决方案

虚拟机版本:CentOS Linux release 7.1.1503 (Core)

在我们学校,有校园网的存在,导致我在配置虚拟机的时候遇到了好多坑,如果没有校园网的存在,直接将虚拟机网络改为桥接,并且配置ip、网关、子网掩码、DNS即可实现网络的共享,但是,一切的想象都是美好的,当头一捶子呀,虚拟机配置完了这些还不行,跟使用windows相同,还是需要web网页认证,但是我的虚拟机是纯命令行的呀,哪来的浏览器啊,至此,我开始走在了填坑的道路。未完,待续。。。。。。

问题的发现

我的虚拟机使用的是桥接的模式,虚拟机就像是局域网内的其它电脑一样,因为我的虚拟机为搭集群准备的,其它电脑要能通过ip访问到的,像往常一样,配置完了ip、网关、DNS之后,去ping百度,结果傻眼了,根本ping不通啊,所以就一顿检查是不是这几项配错了,找了半天无果,这自信心碎了一地啊,这可咋办。后来突然想到,我的宿主机连的是校园网,是要上网认证的,是不是我的虚拟机也需要上网认证呢?结果抱着试试看的态度,用curl命令(对curl命令不是很熟悉的小伙伴可以看一下我对curl命令的介绍)试了一下windows上的web认证的地址,尼玛,居然整通了,将上网认证页面的html给我返回来了。

问题的解决

不能上网的原因找到了,那就解决这个问题吧,首先我想的是使用curl命令去模拟表单的提交,将我的账号密码提交上去,结果试了几次没有成功,一会咱们再说为什么没有成功。

我的第二个解决的思路是使用xmanager,使用xmanager打开一个浏览器,但是此种方法是要保证centos上已经安装了浏览器的,我连网都没连上呢,哪里来的浏览器啊,果断放弃。

第三种方案就是去百度了,百度了一大堆,也没有找到解决方案,受挫太严重了,正好也到了晚饭的时间,那就去吃晚饭吧,万一突然吃饭的时候豁然开朗,想到了解决方案呢,当然,吃完晚饭也没想到解决方案,回来接着百度,我又对curl的命令百度了一下,结果,收获到了意想不到的惊喜,在chrom浏览器中,对服务器发起的请求可以复制成curl命令,给大家演示一下,http://10.10.11.151/0.htm 是我们学校校园认证的地址。

通过输入账号和密码,即可上网,在点击登陆之前,我们先打开调试工具(F12即可打开),选到network选项,如图

此时是一片空白,然后我们就开始点击登录按钮吧,此时就会发现,在network里多了三次请求

其实这三个里面最主要的就是最上边的那个,剩下的两个都是对资源的请求,不是特别重要。点开第一个请求,我们可以看到请求的详细信息,不过,这也不是咱们今天的主角,咱们今天的主角是如何从chrom中找出curl已经生成好的命令,接下来,右键0.html(对应到你们自己的可能就不是0.html了,总之就是最上边这个),这个选项在copy -> copy as curl(bash),这时就复制成功了已经生成好的curl命令了,咱们来看一下我这个自动生成的curl命令。

curl 'http://10.10.11.151/0.htm' -H 'Proxy-Connection: keep-alive' -H'Cache-Control: max-age=0' -H 'Origin: http://10.10.11.151' -H 'Upgrade-Insecure-Requests: 1' -H
'Content-Type: application/x-www-form-urlencoded' -H 'User-Agent: Mozilla/5.0
(Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/76.0.3809.100 Safari/537.36' -H 'Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.
8,application/signed-exchange;v=b3' -H 'Referer: http://10.10.11.151/0.htm' -H
'Accept-Encoding: gzip, deflate' -H 'Accept-Language: zh-CN,zh;q=0.9' --data
'DDDDD=xxxxxxx&upass=xxxxxxx&0MKKey=+&v6ip=' --compressed --insecure

这里面最主要的就是 --data 后的内容,这里面就是我们表单提交的的数据,账号密码等,咱们对比一下浏览器自动提交的数据。

表单提交的就是DDDDD和upass吧,没错吧,你们在弄的时候是参照自己表单提交的数据的。

下一步就是将自动生成的curl命令键入到虚拟机中了。整起(开始左边画龙,右边画彩虹)

怎么又给我返回一堆html代码,没事,别慌,看一下html的内容

在对比一下window上登陆成功的界面

是不是这就是登陆成功了,其实呀,遇到问题别慌,仔细的分析一下,详细的看一下内容。

这回咱们回头说一下我对这个问题的第一解决思路为什么没有成功,因为请求少了好多的请求头,服务器并没有处理我的这个请求,所以就造成了这个问题没有被解决。有点像网站的反爬虫机制。

总结

  • 其实解决本问题的核心思想就是使用curl命令模拟表单提交。
  • 使用chrom浏览器得到发出请求的curl命令。
  • 仔细分析界面,成功解决问题。

关于虚拟机纯命令行centos解决web上网认证的解决方案相关推荐

  1. 纯命令行的centos如何通过上网认证的解决方案

    (一)问题描述:所在网络打开网页,会跳到认证页面,需要输入用户名和密码,认证通过后,才会正常上网.对于纯命令行的centos,无法通过浏览器进入认证页面进行认证. (二)解决手段:使用curl命令模拟 ...

  2. 纯命令行+美观UI,10款实用开源下载工具

    开源社KAIYUANSHE 近期微信公众号订阅功能做调整啦! 没有被星标的账号在信息流里可能不显示大图了! 快星标⭐我们,就可以及时看到发布的文章啦! STEP01 点击右上角标志 STEP02 点击 ...

  3. java命令行执行程序解决依赖外部jar包的问题

    java命令行执行程序解决依赖外部jar包的问题 参考文章: (1)java命令行执行程序解决依赖外部jar包的问题 (2)https://www.cnblogs.com/wangxiaoha/p/6 ...

  4. 球迷 如何在Linux纯命令行玩转谷歌浏览器,边看欧洲杯,边看足球宝贝

    大家好,我是Lex 喜欢欺负超人那个Lex 擅长领域:python开发.网络安全渗透.Windows域控Exchange架构 今日重点: 1.Linux骚操作:纯命令行玩转GoogleChrome浏览 ...

  5. nasa和linux的关系,跟美国NASA毅力号登陆火星的Linux是一个无图形的纯命令行系统...

    美国NASA毅力号火星车所用的Linux是没有图形桌面的,它完全是一个无图形的纯命令行操作系统,跟我们平时所用的Ubuntu.Fedora.银河麒麟等Linux操作系统完全不同,但它们所用的核心都是L ...

  6. 纯命令行linux环境,Ubuntu Server纯命令行环境安装 Dropbox

    Ubuntu Server纯命令行环境下安装 Dropbox,若有看到 dbmakefakelib.py的版本, 例如: Set up Dropbox on a GUI-less Linux serv ...

  7. Linux命令行上执行操作,不退回命令行的解决方法

    问题描述: 如果你现在登录Centos执行了某个操作,但是操作一直占用命令行,命令行显示的也都是这个命令相关的操作,我想做其它事情 ,该怎么办呢 ? 解决方法: 根据<Linux命令行与Shel ...

  8. 管理员技术(二): 访问练习用虚拟机、 命令行基础技巧 、 挂载并访问光盘设备、ls列表及文档创建、复制删除移动...

    一.访问练习用虚拟机 目标: 学会在教学环境中访问练习用虚拟机,主要完成以下事项: 1> 快速重置教学虚拟机环境        2> 通过"虚拟系统管理器"访问虚拟机 ...

  9. 在KVM中使用ISO镜像安装虚拟机(命令行)

    注:本文在CentOS系统中安装,其他Linux基本类似 1.打开命令终端,使用超级权限运行命令,安装KVM组件 yum install qemu-kvm qemu-kvm-tools libvirt ...

最新文章

  1. Oracle ASM 翻译系列第二十七弹:ASM INTERNAL ASM METADATA BLOCK
  2. 用python画花瓣-Python教程:使用Turtles画出带有花瓣的花
  3. 英特尔高级副总裁:收购McAfee是为股东考虑
  4. pyqt5动态显示当前时间
  5. mysql不用limit怎么分页_mysql limit 分页的用法及注意要点
  6. 自己在windows下第一次安装pygame成功的经历
  7. 是否非要用interface关键字来实现接口?
  8. 退出登录后点返回键 是登录状态_看了这50条登录的测试点,你还敢说测试很容易吗...
  9. python和c先学哪一个_python和c先学哪个
  10. scrapy setting
  11. Cash Machine POJ - 1276
  12. UNIX环境高级编程之第4章:文件和文件夹-习题
  13. 软件测试工程师 Linux 十大场景命令使用
  14. Faster RCNN好文(转)
  15. fpga多摩川编码器开源代码_F28379D之CLB解码多摩川编码器1——入手小知识(原创)...
  16. MySql中varchar(10)和varchar(100)的区别==以及char的利弊
  17. Vue.js实际开发案例(不断整理中...)
  18. SQL server 字符串 转 日期格式
  19. xbox360 IX1.60 引导盘制作
  20. 王刚日记:好软文是什么样子的?

热门文章

  1. AES,RSA,IBE三种算法的比较
  2. 佳明安夺(Garmin Enduro)续航简单测试
  3. 高精度反三角函数的实现
  4. 变质量力学问题与虚功原理解答
  5. Kafka数据存储概述
  6. Android 5.0 Phone 模块介绍
  7. 解决WIN7 无法登陆MicroSoft Edge问题
  8. 【运维】什么是 DevOps?
  9. 2021年京东Android岗面试必问,高级面试题+解析
  10. .ccx插件如何安装到ps 2023里