还没开始就被别人绑定了域名

事情的起因与发现

刚买了个服务器搭建了一个dz,想着域名还没备案,就先搭建了起来,然后在做DDOS测试时偶然发现服务器被别人恶意把域名绑定了

最初的解决方案

没管。。。。。。

后来发现有影响,朋友也一直给我说叫我整下

利用重定向把恶意指向过来的域名指到别处

要利用301重定向,首先我们要在Apache上配置一下,Apache默认是不开启.htaccess的


0x01.编辑httpd.conf文件

打开/etc/httpd/conf目录下的httpd.conf文件,找到这一行:

LoadModule rewrite_module modules/mod_rewrite.so

当然,你得确定你的/etc/httpd/modules下有mod_rewrite.so这个文件

ls /etc/httpd/modules | grep mod_rewrite

如果你没有找到这一行,记得在httpd.conf文件里直接添加这一行


0x02.设置AllowOverride

同样的在httpd.conf文件中找到:

<Directory "/var/www/html">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.4/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks #
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All #
# Controls who can get stuff from this server.
#
Require all granted
</Directory>

或者它长这个样子:

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

什么,你告诉我还是找不到???

那教你一个办法

锁定关键词FollowSymLinksAllowOverride None

vi的向下查找命令是:/你要查找的

vi的向上查找命令是:?你要查找的

n是下一个

N是上一个

相信你已经找到了

接下来把None改成All


0x03.编写规则文件.htaccess

跑去网站根目录下,比如我的是/var/www/html

如果存在.htaccess,忽略下一步,直接打开编辑

然后新建.htaccess文件touch .htaccess

编辑.htaccess文件vi .htaccess

添加如下规则

RewriteEngine on
RewriteCond %{HTTP_HOST} ^别人的域名.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.别人的域名.com$
RewriteRule ^(.*)$ http://www.自己的域名.com/$1 [R=301,L]

个人的修改

我知道,你在网上所找到的方法都是上面那种代码,并且应该都没有提 教你怎么开启.htaccess



但是本人实验过,这配置进去还有问题,设置重启Apache后,访问网站提示500错误



机智的我总要查看日志啊

cat /var/log/messages | grep httpd

找到了错误



英语不太好,但是大致知道是服务器没有限定域名,需要修改ServerName,而ServerName字段值在httpd.conf中是被注释掉的

我们在httpd.conf修改它

#ServerName: www.example.com:80

改为

ServerName: 115.**.**.57:80

然后重启Apache,可以访问了


后续

好的故事都会有后续的

以为这样就万事大吉了?

但是我这个被坑得不轻

admin.xx.com都被他解析到我服务器上来了

老衲怎么破



.htaccess好像可以用正则表达式,一查,果然

那就改一下.htaccess咯

RewriteEngine on
RewriteCond %{HTTP_HOST} ^别人的域名.com$ [OR]
RewriteCond %{HTTP_HOST} ^.*.别人的域名.com$
RewriteRule ^(.*)$ http://www.自己的域名.com/$1 [R=301,L]

机智的你已经发现第三行中的www被我改成了.,就是匹配0个或者多个字符,当然你可以改成+

然后重启Apache

systemctl restart httpd

或者

service httpd restart

现在我再访问。。。嘿嘿嘿,被我跳转到百度了


思考

当然,还有其他的方法,自己也可以去网上找找

对了,那个刚才在httpd.conf里换ip的地方也可换自己的域名,因为我的还在备案,就没改

lamp服务器被人恶意绑定域名的解决办法的更多相关文章

  1. HTML5服务器推送消息的各种解决办法,html5服务器

    HTML5服务器推送消息的各种解决办法,html5服务器 摘要 在各种BS架构的应用程序中,往往都希望服务端能够主动地向客户端推送各种消息,以达到类似于邮件.消息.待办事项等通知. 往BS架构本身存在 ...

  2. C#发送邮件时提示:“不允许使用邮箱名称。服务器响应为:”的错误解决办法

    由于项目需要,要为客户提供一个定期发送邮件的程序.本来原来自己还写过,但新写的程序一晚上也没通过测试,总是提示"不允许使用邮箱名称.服务器响应为..." 经过在网上搜索查找解决办法 ...

  3. 阿里云服务器被挖矿minerd入侵的解决办法

    上周末,更新易云盘的时候,发现阿里云服务器CPU很高,执行 top 一看,有个进程minerd尽然占用了90%多的CPU, 赶紧百度一下,查到几篇文章都有人遇到同样问题 Hu_Wen遇到的和我最相似, ...

  4. 服务器×××上的MSDTC不可用解决办法

    MSDTC(分布式交易协调器),协调跨多个数据库.消息队列.文件系统等资源管理器的事务.该服务的进程名为Msdtc.exe,该进程调用系统Microsoft Personal Web Server和M ...

  5. ubuntu系统中添加DNS服务器地址后诡异消失的解决办法

    今天查看了一下自己电脑里的ubuntu14.04系统,发现无法上网,于是ping了一下百度,出现unknown host,查了一下/etc/resolv.conf中的DNS地址,却发现我之前的修改被清 ...

  6. Ubuntu-linux云服务器下安装开启虚拟环境失败解决办法

    为什么要安装虚拟环境? 1.某些项目需要安装旧的包,开发相应功能 2.项目开发时,安装部分环境不希望影响整机环境 如何安装? 首先安装python 安装pip工具 sudo apt-get insta ...

  7. 【转】Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法

    1.获取客户端IP地址实现方法(扩展类) using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc.ModelBinding; u ...

  8. Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法

    1.获取客户端IP地址实现方法(扩展类) using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc.ModelBinding; u ...

  9. iis运行asp.net页面提示“服务器应用程序不可用”的解决办法_.NET.

    原因:主要是iis安装在了net framwork之后 解决办法:需要在IIS中重新注册.net 也就是要用到系统盘: cd c:\windows\microsoft.net\framework\v2 ...

随机推荐

  1. 43. Multiply Strings (大数乘法)

    DescriptionHintsSubmissionsDiscussSolution   Pick One Given two non-negative integers num1 and num2  ...

  2. Java 内存分配

    静态储存区:全局变量,static 内存在编译的时候就已经分配好了,并且这块内存在程序运行期间都存在. 栈储存区:1,局部变量.2,,保存类的实例,即堆区对象的引用.也可以用来保存加载方法时的帧.函数 ...

  3. Python pyodbc安装

    1)下面这个链接找个适合自己python版本的文件下载下来 https://pypi.org/project/pyodbc/#files 2)放到scripts下面 3) 在scripts路径上输入c ...

  4. plsql注册-转

    注册码:Product Code:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqzserial Number:601769 password:xs374ca https://blo ...

  5. Linux基础命令---iptables-save

    iptables-save iptables-save指令可以将内核中当前的iptables配置导出到标准输出.通过IO重定向功能来定向输出到文件. 此命令的适用范围:RedHat.RHEL.Ubun ...

  6. C# 设置按钮快捷键

    参考自:http://www.csharpwin.com/csharpspace/3932r8132.shtml 一.C# button快捷键之第一种:Alt + *(按钮快捷键) 在Button按钮 ...

  7. android使用inject需要注意的地方

    android使用inject需要注意的地方1.viewmodel里面添加注解@Inject FavoritesDBManager mFavoritesDBManager; 2.Component里面 ...

  8. 详解:PHP加速器配置神器opcache

    什么是opcode? 当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode).Opcode cache的目地是避免重复编译,减少CP ...

  9. jvm 工作原理

    作为一名Java使用者,掌握JVM的体系结构也是必须的. 说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成:Java编程语言.Java类文件格式.Java ...

  10. Java 高级开发必修知识---内部类

    摘自:http://www.cnblogs.com/lsy131479/p/8798912.html Java 内部类分为: 1)成员内部类 2)静态嵌套类 3)方法内部类 4)匿名内部类 内部类的共 ...