既然流量劫持那么讨厌 那么大型互联网公司怎么解决

幸运草
幸运草
幸运草
896
文章
3
评论
2020年5月15日22:52:39 评论 86

今天,今日头条、美团大众点评网、360、腾讯、微博、小米科技六家公司发表联合声明,共同呼吁有关运营商严格打击流量劫持问题,重视互联网被流量劫持可能导致的严重后果。

联合声明指出,在当前的移动互联网环境下,流量劫持主要分为两种方式:域名劫持和数据劫持,放任流量劫持会导致扰乱市场秩序、损害用户利益以及传播诈骗、色情等低俗甚至严重违法信息的恶果。

据业内人士透露,流量劫持人人喊打,但此前一直没有公司敢于正面呛声,这从国内一线公司也只能以联合声明方式抗议可见一斑。那么真的大家对此束手无策吗?我们联系到了阿里云网络方面的资深工程师亭林,请他介绍一般大公司如何应对流量劫持,精简分享如下。


相对于 PC 端的网络环境,移动端的网络环境更为复杂,2G、3G、4G、Wi-Fi 各有不同,而复杂的网络环境也增加了流量劫持的可能性和复杂程度。

流量劫持的方式主要分为两种,域名劫持和数据劫持。

域名劫持

域名劫持是针对传统 DNS 解析的常见劫持方式。用户在浏览器输入网址,即发出一个 HTTP 请求,首先需要进行域名解析,得到业务服务器的 IP 地址。使用传统 DNS 解析时,会通过当地网络运营商提供的 Local DNS 解析得到结果。域名劫持,即是在请求 Local DNS 解析域名时出现问题,目标域名被恶意地解析到其他 IP 地址,造成用户无法正常使用服务。

既然流量劫持那么讨厌 那么大型互联网公司怎么解决

传统 DNS 解析流程

解决域名劫持的一个办法就是绕开 Local DNS,通过一个可信的源头来解析域名,解析方式不需要拘泥于 DNS 协议,也可以通过 HTTP 的方式。两年前,手机淘宝等 APP 也曾遇到这一问题,随后在做底层网络优化时,通过使用自己定制的 HTTPDNS,一个安全可信的域名解析方案,解决了域名劫持问题。

HTTPDNS 技术也准备通过阿里云解析服务(AliDNS)开放给广大开发者使用,当前这款产品正在内测中,预期将在明年初上线。到时,移动开发者也能自主设置,将需要防劫持的域名进行保护。

数据劫持

数据劫持基本针对明文传输的内容发生。用户发起 HTTP 请求,服务器返回页面内容时,经过中间网络,页面内容被篡改或加塞内容,强行插入弹窗或者广告。

行业内解决的办法即是对内容进行 HTTPS 加密,实现密文传输,彻底避免劫持问题。

而 MD5 校验同样能起到防止数据劫持的作用,MD5 校验是指内容返回前,应用层对返回的数据进行校验,生成校验值;同时,内容接收方接收到内容后,也对内容进行校验,同样生成校验值,将这两个校验值进行比对,倘若一致,则可以判断数据无劫持。但相比 HTTPS 加密,MD5 校验存在一定风险,劫持方技术能力强则有可能在篡改内容后替换校验值,导致接收方判断错误。

HTTPS 一开始是以加密通信为需求而诞生的,第一批用户也是银行等金融机构。但随着互联网上个人数据传输变得更加普遍, HTTPS 早已经成为了互联网行业的大势所趋。

今年双11,阿里的淘宝、天猫、聚划算等电商平台就做到了全站的 HTTPS 加密访问,虽然改造投入巨大,但在防止资源劫持提高交易安全方面功不可没。当然,这一技术也将在阿里云上开放。

第三方的递归解析服务(LocalDNS)

互联网公司可以采用以上这两种方式避免劫持,而对广受流量劫持影响、上网体验严重受损的网民来说,其实也可以通过使用第三方的递归解析服务(LocalDNS)来避免这一问题。

目前,包括 Google、CNNIC、阿里云等公司在内都已经推出了 LocalDNS 服务。阿里云解析的 LocalDNS 的 IP 地址简单易记:223.5.5.5 和 223.6.6.6,用户只要在网络选项中进行简单的设置就可以使用。对于这款面向广大网民的免费服务,阿里云解析也承诺绝不会重定向或者过滤用户所访问的地址,并且绝无弹插广告。

特别声明:以上文章内容仅代表作者本人观点,不代表变化吧观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与变化吧联系。

你知道吗?这个政策将影响你贷款买房

 银保监会拟规定:个人消费贷最高20万元,个人消费贷不得用于买房炒股,中国银保监会网站5月9日发布了《商业银行互联网贷款管理暂行办法(征求意见稿)》,意见稿指出,单户用于消费的个人信用贷款授信额度应当不超过人民币20万元,到期一次性还本的,授信期限不…

转载请注明:{{title}}-变化吧
  • 赞助本站
  • 微信扫一扫
  • weinxin
  • 赞助本站
  • 支付宝扫一扫
  • weinxin
幸运草
网站SEO优化基础流程(新手必看) 优化

网站SEO优化基础流程(新手必看)

宝塔面板搭建一个获取网站的Favicon图标的APIgetFavicon是一个可以获取网站的Favicon图标并显示在你的网页上的项目。安装方法很简单,属于开箱即食。这篇文章还是基于宝塔面板来搭建。 1、简介 项目:https://github.com/owen0o0/getFavicon 2、准备 宝塔面板(…网站SEO优化属于市场营销的一种,在外行看起来专业性非常强。但在内行眼里,网站SEO优化基础流程是有规律可行的。只要在SEO优化前搞清楚一些基础流程,然后按照流程一步步实施,就算是刚入行的新手,也能少走很多弯路。下面MAY的SEO博客为您讲解SEO优化基础流程。 01 选择网站建站程序 您可能会看到很多的博主介绍第一步应该是购买域名和空间,而May不建议您这样做。 ①. 从网站SEO优化的角度,网站建设最好是先在本地搭建,待网站搭建出来后再上线,一般网站搭建可能会花2~3个月时间; ②. 而您购买的域名和空间刚开始会选择按年购买,网站在本地搭建时,您的域名和空间处于完全闲置的状态。买来也是空置在那里。当然对于比较热门的域名,建议您还是先下手为强。 ③. 推荐WordPress建站。即使是新手,WordPress算是轻松易上手的一款建站程序。丰富的网站模板及插件可以实现多样化功能。 02 选择网站域名和空间 域名:不言而喻,是访客识别您网站的一种标识。一个简单好记的域名至关重要。当然在您选择域名前,最好查看域名历史。 空间:也就是我们常说的网站服务器,是存放网站内容的容器。一个安全稳定的空间/服务器为网站长远发展保驾护航。 03 网站备案 选择国外空间或服务器,可以忽略这一步骤。 选择国内空间或服务器,目前是逃不掉网站ICP备案这一环节。您选用的哪家空间/服务器,就在哪家备案(这是朝廷的规矩)。当然,还有一些省份要求公安联网备案。 04 网站基本设置 ①. 网站TDK T: 网站标题Title是影响排名的一个重要的因素,也是展示在搜索结果第一行。好的标题会决定用户是否点击进入网站。 D: 网站描述Description大致简要介绍网站的主要内容。 K: 网站关键词Keywords,可写也可不写。 ②. 301重定向、404页面、伪静态、站点地图、robots.txt 301重定向:确定网站首选域后(是带www还是不带www),将非首选域301重定向到首选域,避免网站权重的分散。 404页面:当用户访问到不存在页面时,能返回404页面,提示用户这是错误的页面,另外建议404页面设置返回首页或其他分类页导航,帮助用户返回,能大大降低网站跳出率。 伪静态或纯静态:随着搜索引擎越来越智能化,动态页面虽说可以被搜索引擎抓取;但是为了降低搜索引擎工作难度,还是建议将网站伪静态或纯静态化处理。 站点地图:地图一般分为两种,一种是给搜索引擎看的,格式一般为.xml;另一种是给用户看的,格式一般为.html。 robots.txt:搜索引擎访问网站时,会查看站点下的robots.txt,来查看哪些页面可以访问。如果您的网站所有页面都允许搜索引擎抓取,则可以不使用robots.txt;但一般都建议网站配置robots.txt,来禁止搜索引擎抓取一些不重要的页面。 05 网站内容的丰富 保持定期更新优质原创内容,保证网站的活跃,丰富的网站内容不仅可以获得用户的喜爱,也更容易获得搜索引擎的青睐。 06 网站内链建设 网站内链建设包括导航栏链接、面包屑导航链接、侧边栏链接、底部链接、文章中链接等,整个网站内部形成一个巨大的网络结构。以便蜘蛛可以爬行网站的每个角落,提高网站收录量。 07 网站外链建设 也许您会听到很多声音说网站外链建设已经不重要了。但是May觉得外链还是有必要的。先不说外链会不会有助于网站排名,但您不可否认的是外链为搜索引擎和用户多提供进入您网站的入口,及时发现您的网站并访问您的网站。一个优质的外链会给您带来源源不断的流量,您还会说它没必要吗? 写在最后:网站SEO优化是一个细活,也是一个长期的过程,特别是前期会很难看到效果。但坚持下来,一定会获得意想不到的收获。 变化吧:手把手教你建站(基础篇)说起第一次使用Wordpress建站,相信大部分人的印象都是虚拟主机、空间搭网站,因为便宜、省心,自己搭个小站放上去也算足够,但是随着各种技术的迅速发展,原来的很多虚拟主机已经不能再满足Wordpress配置要求,再加上各种云服务、VPS的降价,服务器性价比已…
宝塔面板LNMP从零开始配置NextCloud超详细教程,同时配置外部七牛云存储 优化

宝塔面板LNMP从零开始配置NextCloud超详细教程,同时配置外部七牛云存储

SQLMap-常用命令SQLMap是一个开源的渗透测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限。它具有功能强大的检测引擎,针对各种不同类型数据库的渗透测试的功能选项,包括获取数据库中存储的数据,访问操作系统文件甚至可以通过外带数据连接的方式执行操作系…无奈死了,网络上完全没有对于宝塔面板LNMP对于NextCloud的配置教程,官方也没有任何中文文档,不披马甲官网慢得要死,这里给各位排排坑,科普一下。 准备 马甲一个,用来下载最新的NextCloud安装包,注意不要运行包和其他需要依赖的包,最简单的php包就可以。当然,如果你没有马甲,但是能上官网的话也可以直接去下,就是速度慢成蚂蚁...... 在整个配置过程中,关闭宝塔当前站点的防火墙,关总开关,不要一个一个关。 宝塔面板php安装好7.1-7.3版本,低于该版本不能运行。 完全按照教程操作,不要少步骤。 开始配置 在宝塔面板中准备好空壳网站 主要内容: 数据库:MySQL数据库。 PHP:7.1及以上版本。 在宝塔面板——软件商店,找到php 7.X,进入配置页面,选择“安装扩展”,安装“fileinfo”、“opcache”、“redis”、“apcu”、“imagemagick”这五个拓展,静静地等待安装完成。 添加后,绑定好域名,配置好SSL(推荐)。 在“网站目录”中,关闭“防跨站攻击”。 在“文件”中,找到刚刚创建的网站的根目录,删除所有文件,包括上传的NextCloud源码包。 如果全部删除后,发现仍有.user.ini文件,删掉它。 上传源码 直接上传,并且完全解压、覆盖。 如果发现解压到子目录里面了,进入子目录,全选——剪切,然后粘贴到根目录,然后把那个子目录删掉,保证没有多余文件。 这套系统自带程序完整性检查,对于每个文件都要进行md5匹配,否则会有安全提示。 为了避免这些警告,我们还是最好先处理好。 配置系统 打开绑定域名,系统会自动进入安装界面。 填写管理员用户名、密码。 注意!不要在填写完管理员帐号密码后就直接点击“安装完成”!你还没有配置数据库! 点击“存储与数据库”选项,弹出了“数据目录”和“配置数据库”选项。 改变数据目录,不要使它在网站目录内,否则之后还需要在网站配置里面添加deny项。 最好是放在/www目录下。 然后选择数据库为MySQL/MariaDB! 在宝塔面板内创建一个MySQL空白数据库,记下用户名和密码,然后填写到配置项内。 填写后的配置应该像这样: 注意数据库端口的问题,在localhost后面,输入冒号加上端口号,端口号应该为宝塔面板安装的MySQL的运行端口,如果你没有修改过,应该为3306。 然后点击安装完成,等待几十秒钟,就会进入首页了。 解决网络安全警告 直接点击右上角头像,进入“设置”页面,点击左侧“管理——概览”进入安全管理页面。 等待转圈完成,你会看到十多个安全提示,例如(我这里因为之前修复过一次了,有一些错误提示没有出现,具体的在下面): 先说明一点,我如果标出“这个问题可以通过修改配置文件解决,不需要单独修复”,代表这个问题可以通过修改完主要问题后,通过修改配置文件的方式一起解决,就不用单独操心修复了。 这些提示我几乎都看到过了......(心塞塞) 一些文件没有通过完整性检查。了解如何解决该问题请查看我们的文档 请点击右侧“无效文件列表”,查看提醒的错误文件,一般都是.user.ini文件不匹配,或者是你没有删除你的程序源码包,有了多余的文件。 PHP 的设置似乎有问题, 无法获取系统环境变量. 使用 getenv(”PATH”) 测试时仅返回空结果. 编辑/www/server/php/73/etc/php-fpm.conf文件,路径中的73请替换为你的php版本,71为7.1,72为7.2,以此类推。 在文件的最后面添加如下代码: env = $HOSTNAME env = /usr/local/bin:/usr/bin:/bin env = /tmp env = /tmp env = /tmp 注意是在文件最后,也就是下面,而不是在下面,否则php会无法启动(不要问我怎么知道的)。 HTTP的请求头 "Strict-Transport-Security" 未设置为至少 "15552000" 秒。为了提高安全性,建议参照security tips ↗中的说明启用HSTS。 这个问题可以通过修改配置文件解决,不需要单独修复 PHP 模块 ‘fileinfo’ 缺失. 我们强烈建议启用此模块以便在 MIME 类型检测时获得最准确的结果. 在宝塔面板——软件商店,找到php 7.X,进入配置页面,选择“安装扩展”,安装“fileinfo”、“opcache”、“redis”、“apcu”、“imagemagick”这五个拓展,静静地等待安装完成。(一劳永逸,不要用哪个安装哪个,都会用到的) 您的网页服务器未正确设置以解析“XXXX”。更多信息请参见文档。 这个问题可以通过修改配置文件解决,不需要单独修复 内存缓存未配置,为了提升使用体验,请尽量配置内存缓存。更多信息请参见文档。 在宝塔面板——软件商店,安装Redis,里面的配置不需要修改。 在宝塔面板——软件商店,找到php 7.X,进入配置页面,选择“安装扩展”,安装“fileinfo”、“opcache”、“redis”、“apcu”、“imagemagick”这五个拓展,静静地等待安装完成。(如果在准备中已经安装好,跳过这个步骤) 进入网站根目录,打开config文件夹,编辑config.php文件,在最后一个逗号后面回车,添加以下内容: 'memcache.local' => 'OCMemcacheAPCu', 'memcache.distributed' => 'OCMemcacheRedis', 'redis' => array( 'host' =>...
Centos运维常用工具 运维

Centos运维常用工具

变化吧:WordPress优化教程近些年来,Chrome等浏览器一直在推动https网站,所有的http协议网站被标记为不安全,而在今年的7月份开始,Chrome将对非https网站进一步加入明显的非安全标记,如果这时再不对网站进行https改造的话,那么可能会对信任度造成一定的影响,所以说对…本工具集包含有系统内核参数优化,ssh证书登录,网卡聚合,mongodb/mysql数据库安装,网络监控以及J2EE开发常用工具安装。以上工具集均为centos中常用的配置与工具,经过本人上一份工作,运维20多台分布式服务器,安装过50次以上linux的实践经验,收集整理出这套常用的服务器管理配置,在我后续的工作中发挥了巨大的价值,提升了N倍工作效率。当然这个过程中,离不开向专业的运维工程师请教,向度娘和谷哥咨询,后续也会不断的更新和改善这套工程集,使得工具包含的更加齐全和便捷。本工具集适用需要经常部署WEB环境的伙伴使用。 申明:本人原本想成为一名Java工程师,却成为了一名前端工程师(h5/angularJs/css3),最后其实做的是全栈的工作。所以分享的内容不一定非常专业有深度,但是乐意将自己所经历过的东西与大家分享,希望可以给大家带来帮助,如有错误欢迎批评指正。 另外:以上核心参数优化,比较适合WEB应用和数据库服务器的配置,其它用途的服务器建议先了解参数的含义,修改参数后再使用,因为不同的服务 也许有更合适的参数。 下载代码后,给文件加可执行权限:chmod -R x shell/ 1. 功能列表 --执行auto.sh-- 2. 功能列表说明 2.1 【System Environment】系统环境 Initialization System environment 系统内核参数优化,提升运行效率。 Configure SSH_Auth 配置SSH证书登录,authorized_keys是公钥,client_rsa是私钥,需要自己生成替换例子中的两个文件。 Configure Network-bonding 配置网卡聚合,需要把network/network-bonding.sh中聚合的IP改成自己的IP。 2.2 【Common Databases】常用数据库 Install MongoDB_2.6 安装Mongodb2.6版本 (后续会将集群配置及优化脚本补上) Install MongoDB_3.0 安装Mongodb3.0版本 (后续会将集群配置及优化脚本补上) Install MySQL 安装Mysql 5.1.3版本 2.3 【Network Monitoring】网络监控 Find Current Network-flow 显示当前服务器网卡流量状态 Install Url_Listening 这是一个比较奇葩的功能,一般用于解决限于水深火热之中的问题;用于监听一个URL,当返回的内容中,包含某个关键内容时,可执行指定的操作。 2.4 【Common Tools】常用工具 Install Nginx1.6 安装Nginx1.6版本 Install Jdk1.7 安装JDK1.7版本,也可以修改app/java/install_JDK.sh中wget源的地址,改成自己需要安装的任意JDK版本 Install Maven3.3.9 安装Maven3.3.9版本 Install SVN1.8 安装Subverion1.8版本,如果想装其作为SVN服务端,可执行service httpd restart Install Tomcat7 安装Tomcat 7版本 Install Tomcat8 安装Tomcat 8版本 Install Jenkins2.18 安装Jenkins2.18版本 Install Git1.7.1 安装Git1.7.1版本 Install Memcached1.4.4 安装Memcached1.4.4版本 Install Redis 安装Redis2.8.7版本 NFS-Server 安装NFS服务器 NFS-Client 安装NFS终端 3. 操作说明 输入相应的序号即可执行操作。 【文章来源】: https://github.com/zxui/shell如何做好网站建设和推广工作目前,营销型网站建设是最热门的网站,它可以优化企业形象或发挥很大的潜力。那么营销网站建设的特点是什么?时代创信网站建设公司下面将为您提供深入的分析。 对于企业来说,要做好网站建设和推广工作,首先必须有一个营销网站,许多公司在选择企业网站建设时没有给予足够的重视…
linux运维——基础篇 运维

linux运维——基础篇

变化吧:WordPress优化教程近些年来,Chrome等浏览器一直在推动https网站,所有的http协议网站被标记为不安全,而在今年的7月份开始,Chrome将对非https网站进一步加入明显的非安全标记,如果这时再不对网站进行https改造的话,那么可能会对信任度造成一定的影响,所以说对…说到服务器操作系统,linux的各种发行版本以毫无悬念的姿态占领了绝大部分的市场份额。常见的桌面操作系统Windows与Linux在操作上有着很大的区别。 容器技术最初发源于linux,也成熟结果与Linux,因此要掌握容器技术与云运维技术免不了对Linux有一定的了解。 1、systemd 计算机在启动一个操作系统时必须加载并初始化操作系统,方能运行其他的应用程序,这是计算机初始化必不可少的一个启动过程,也就是说计算机启动需要一款初始化系统。systemd是目前Linux系统中最流行的初始化系统之一,能提高系统的启动效率与质量,它不仅可以让系统进程并行启动,还能很好地守护init进程,减少系统内存的不必要开销。 在systemd诞生以前,还有两个系统初始化工具,分别是systemvinit和upstart,systemvinit是一套传统的初始化系统,已经逐渐地淡出了Linux历史舞台,现在已经基本被systemd和upstart取代了,systemd和upstart各有各的特点,不过目前已经有绝大多数的Linux发行版都默认使用systemd,比如Fedora、openSUSE、Ubuntu、Gentoo、Arch Linux等一系列Linux发行版。 2、shell基础编程 在Linux系统中,shell是一种命令行的解释器命令,是用户与系统内核之间进行通信的一种语言。第一个Unix Shell是sh,除此之外还有很多优秀的shell,例如:ksh、bash、csh、tcsh等。 Shell具有两种工作模式,分别是互动模式和脚本模式。互动模式就是用户直接在终端上输入指定的命令并执行,等待命令执行完毕并分析返回的结果,然后再执行下一条命令。脚本模式就是在执行Shell命令的过程中,不需要用户去干扰或控制,它会自动执行下去。脚本模式的执行效率是非常高的,也就是我们经常说的自动化运维,只要我们编辑好了Shell任务,然后跑在Linux进程中,这些任务将会被自动处理。SQLMap-常用命令SQLMap是一个开源的渗透测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限。它具有功能强大的检测引擎,针对各种不同类型数据库的渗透测试的功能选项,包括获取数据库中存储的数据,访问操作系统文件甚至可以通过外带数据连接的方式执行操作系…