Python对外服务经常被扫描如何应对,python对外服务应对,网络情况先说一下:路由器
Python对外服务经常被扫描如何应对,python对外服务应对,网络情况先说一下:路由器
网络情况先说一下:
路由器上接电信网络,下面连着我们部门的5台机器,和另外一个服务器。
路由器通过端口转发将80端口转发到服务器,将8080端口转发到我自己的机器。
然后我自己的机器通过python对外提供了一个服务(其实只是希望内部人员测试访问的),可是最近发现好像被人扫描了,这是python服务的日志截图:
除了绿色矩形框内这个请求是我自己的,其他都不是我发送的,感觉就是有某种扫描器之类的东西在不断尝试想把这个机器当作代理。
这是个什么情况? 怎么避免?
另外有个疑问,我看到这些扫描日志里面大部分状态码是400,但是有一部分是200,我就自己用一个python脚本试了试:
import httplibconn = httplib.HTTPConnection("192.168.8.12:8080")conn.request('get', 'http://www.baidu.com')print conn.getresponse().read()conn.close()
这个时候日志显示状态码400,但是改成下面的语句:
conn.request('get', 'http://www.baidu.com/')
状态码就是200.
这是什么情况?
只希望内部访问的话何必在路由器上开端口呢,直接固定自己机器的IP,然后内网IP访问就行了。路由器稍微高级点的话还可以搞个内部用的域名
不用 8080 端口就可以了。这些请求都是 HTTP 代理扫描器留下的。8080 是一个著名的 HTTP 代理端口号。
后边那个,取决于你使用的 Web 框架。比如我用的 Tornado,遇到这样的扫描就会返回 404。
让服务只监听127.0.0.1,然后需要测试的通过ssh代理访问即可。
我就这么维护我的服务器的,tomcat只监听127.0.0.1的ip,外部应用通过apache反向代理,manager就通过ssh代理上去访问
编橙之家文章,
相关内容
- Python检测数据是否为空用什么方法,python检测,现在的实
- 求Python BeautifulSoup爬取数据不能正常运行源码修正,,
- python爬虫抓取相关的小白问题,python爬虫抓取小白,大神
- Python字典与json数据好像为什么呢?,python字典json数据
- JetBrains家的IDE如何使用会更高效,jetbrains更高效,装了
- python想生成linux命令行可用软件应该如何做打包,pyth
- 原理相同只是精简了的python代码,运行结果不同是为什么
- Python擅长处理特别大的文件吗,python擅长处理,Python处理
- 新手Python算法统计list及tuple应用有什么好方法,python
- django较多数据传递如何优雅的呈现,django较多传递,最近
评论关闭