惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Schneier on Security
A
Arctic Wolf
Scott Helme
Scott Helme
S
Securelist
Schneier on Security
Schneier on Security
W
WeLiveSecurity
Attack and Defense Labs
Attack and Defense Labs
Security Latest
Security Latest
Project Zero
Project Zero
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
C
Check Point Blog
F
Full Disclosure
Stack Overflow Blog
Stack Overflow Blog
H
Hacker News: Front Page
T
The Blog of Author Tim Ferriss
TaoSecurity Blog
TaoSecurity Blog
Vercel News
Vercel News
A
About on SuperTechFans
N
News and Events Feed by Topic
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
The GitHub Blog
The GitHub Blog
S
Security Affairs
Y
Y Combinator Blog
T
The Exploit Database - CXSecurity.com
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Forbes - Security
Forbes - Security
IT之家
IT之家
WordPress大学
WordPress大学
Last Week in AI
Last Week in AI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
The Register - Security
The Register - Security
Jina AI
Jina AI
云风的 BLOG
云风的 BLOG
T
Tailwind CSS Blog
K
Kaspersky official blog
Hacker News: Ask HN
Hacker News: Ask HN
C
Cisco Blogs
MyScale Blog
MyScale Blog
博客园 - 【当耐特】
T
Threat Research - Cisco Blogs
D
Docker
G
GRAHAM CLULEY

Dr34m's Blog

I Expect You To Die(我希望你死) 1,2,3 完整中文攻略 Linux换国内源 && docker安装 && 换加速镜像 Vue3 + Element-Plus 极简速查 随笔 pyinstaller打包的程序执行报错Failed to extract xxxx decompression resulted in return code -1 taoSync排除项简易教程 apscheduler的cron配置项 如何在绿联NAS中使用TaoSync同步我的文件到各个网盘 GB28181抓包记录 JS计算字节大小,把字节转换为KB/MB/GB/TB等 在Python中使用onvif管理摄像头,包括设备发现,获取RTSP地址,获取设备信息,截图,云台控制与缩放,设置时间 编写bat脚本实现对vue项目构建并压缩 内网穿透工具frp快速使用 CentOS 7.9 安装基础开发环境jdk redis nacos nginx mysql Pyinstaller 逆向 VUE实现复制与粘贴_获取剪切板内容 Electron + xterm.js + node-pty + vue 实现本地终端 child_process exec 中文乱码 Windows&Linux 解决方法 yum 更新 gcc CentOS安装并使用conda 将fluid主题博客的静态资源由第三方改为本地存储 一个上手即用的通用公众号/小程序/h5/app框架 python批量转化doc到docx SpringBoot单元测试注入空指针 TensorFlow 预测出现NaN的一种可能以及解决方法 随笔 python归一化数据 windows下python安装sasl遇到的问题及解决 将对象List中的某个字段放到新的List中[转载] Python http.server 本地服务支持跨域 TensorFlow入门 Flink学习笔记 windows本地配置spark开发环境 dataX使用 Apache Hive 学习笔记 hadoop学习笔记 element-ui 自带事件添加自定义参数 windows 11安装安卓应用程序 centos7安装zookeeper centos7安装jdk8 用idea开发spring项目过程中热重启 docker学习笔记 CentOS7安装k8s集群 通过Github Actions部署静态网站到腾讯云COS,并自动刷新CDN 用Typora编写Hexo博客时图片的处理 Hexo + Github Actions 提交代码自动部署 云服务器 腾讯云COS github-pages 常用的Linux进程基本命令 python实现微信jsapi签名 VsCode开发Python常用配置 mysql获取当期日期是该年第几周 LocalDate获取当前周周一日期 删除node_modules重新安装 基于firewalld端口转发 pip 安装 tensorflow MemoryError Java过滤html标签 mysql清空表,并让自增从0开始 JavaScript获取当前周或下n周的周n的日期 java复制不同实体类中相同的字段 前端下载二进制文件 mysql获取最近一段时间数据 python - pip换源 svn提交后jenkins自动部署 常见nginx反向代理配置 h5实现一种自动滚动的告警列表 nginx代理网站子目录到本地目录 centos下hexo + svn + jenkins实现博客自动部署 centos中jenkins配置环境变量 centos安装jenkins centos安装svn服务器 Ubuntu 20.04 换国内源 Vs Code编写md文件实现实时预览 Python自动处理依赖 海滨校园助手api使用文档 hexo-yilia主题相册 Java实现文件重命名,Java文件追加写入,java读取图片尺寸 Hexo安装配置并托管至github 新起点,新征程 在ubuntu安装jdk并配置环境变量 一个不到300行的C语言消灭敌机游戏 搭建L(Linux)+A(Apache)+M(MySQL)+P(PHP)网站环境,并安装Discuz 搭建L(Linux)+N(Nginx)+M(MySQL)+P(PHP)网站环境,并安装Wordpress NSA工具包验证之RDP漏洞利用 NSA工具包验证之IIS6.0漏洞利用 NSA工具包验证之SMB漏洞利用 SEO Ultimate 7.6.5.9汉化版(中文版)免费下载 在腾讯云服务器搭建FBCTF平台 FBCTF汉化简体中文免费下载,FBCTF更新缓存代码 wordpress发送邮件设置以及常见问题解决 短网址 危山 水调歌头 水调歌头
一个小白的自学建站史(菜鸟建站入门)
Dr3@m · 2017-03-07 · via Dr34m's Blog

接触

内网的尝试

可能有点特别,我刚开始接触与网站相关是在一个关于DVWA这个漏洞系统的搭建上。那时破晓团队的创始人之一K0r4dji到我们学校来有一个讲座,他讲了很多看起来特别高大上的东西。演讲后有一个面基会,我就去参加并找到他,并表示想学一些网络安全技术,希望他能帮我引进门。他就给我介绍了很多东西,其中就包括了DVWA这个漏洞平台,于是百度安装方法,找到了一篇FreeBuf上的文章:新手指南:手把手教你如何搭建自己的渗透测试环境接触到了xampp这款软件。但是安装了软件之后一脸懵逼,完全不懂,还好教程上边有详细的介绍,一步一步,虽然不理解,但是总归是成功安装了,在电脑上输入127.0.0.1/dvwa/login.php,成功进入!接下来问题就来了,我要如何让别人访问这个漏洞系统呢?教程写着:ip-address-of-windows-xp-machine/dvwa/login.php,于是我傻乎乎的在别的电脑上输入进去,结果不行,一番苦思冥想,终于尝试把“ip-address-of-windows-xp-machine”替换为我电脑内网的IP,成功了,有一点点小激动,也有了一些明悟,IP地址似乎就是相当于一台电脑的标志,每一台处于同一内网环境的电脑都有与其唯一对应的IP地址,通过这个IP可以访问这台电脑(服务器)的数据。之后我又尝试了用自己所学的HTML知识写了网页放到xampp\htdocs目录,然后访问该电脑的IP,果然可以打开网站,仿佛明白的从小到大一直在访问的网站的一点工作方法。

公网服务器被黑

之后偶然的一个机会得知了服务器运营商的存在,比如腾讯云、阿里云、百度云等等,于是我就在腾讯云上试用了一台服务器,用了windows系统,有5天时间,建议通过windows系统自带的远程桌面连接,方法为:

按组合键windows+R,并在运行中输入”mstsc”;

在跳出来的界面输入你的服务器公网IP地址,并按提示输入用户名和密码即可。
第一件事就是在上边安装了xampp,然后把xampp\htdocs目录下文件替换为DVWA,接着把IP地址放到了一个CTF交流群里,当天晚上,有个人在群里问我,这是你的网站吗?我说是,他说你改一个文件给我看看,我就改了,然后我的服务器就被黑客拿下了,还留了后门……这之后才知道DVWA是不能乱放的,不过起码到此为止,我已经可以建立一个外网可以访问的网站了。

深入

有了模样

我在阿里云的首页上看到有域名注册,于是尝试着注册了我的第一个域名:**_**_**.top(这个域名现在已经不用了,所以打码了),记得是1块钱首年,嘿嘿,但还是不知道要怎么才能使得访问域名就能访问服务器。因为一直自学,我花费了好几天时间,才知道有域名解析这种东西,于是点击域名管理,找到我的域名后点击解析,点击添加记录,主机记录用了www,记录值就填上了我腾讯云服务器的IP地址,然后访问www.__**.top ,成功访问到了我的网站。再之后我开始自己手写网站,命名为1.html,放到服务器里,结果在我访问服务器的时候,浏览器直接列出了我的网站目录(xampp默认开启了目录列表,不然应该是403禁止访问),要手动点击1.html才能打开网站,这可别扭死了!如下图为列出目录

下图为403

然后尝试各种姿势百度,百度了好长好长时间(估计这种人尽皆知的东西都没人懒得说),才看到了被一句带过的index.html,于是把网页重命名为index.html(修改配置文件也是可以修改默认主页的),成功了!至此,我的网站终于看起来像是一个网站了!如图为我当时建立网站之一:

一服多站

之后随着对CTF的了解,萌生了建立一个CTF资源站的想法,然后又想建立一个自己主页(这也算是一个小时候的梦想吧),但是服务器只有一台,IP只有一个,如果都放在同一个目录下用同一个域名的话总觉得别扭,这个要怎么解决呢?又一次和朋友聊天的时候他推荐给我一个软件叫phpstudy,果断放弃xampp使用phpstudy,在phpstudy有一个功能叫做站点域名管理,如下图

于是把需要的域名都通过A记录解析到我的服务器上,再添加到域名管理里边,成功实现了一服多站。
随着研究的深入,后来知道:phpstudy是基于apache(也可以选择nginx或iis作为phpstudy的基本程序),通过修改apache的站点配置文件(目录在PHPstudy/Apache/conf/vohsts.conf)也可以实现同样效果,相信聪明的你和我一样一看就懂了,如图:

至此,我已经可以较为完善的拥有一个网站服务器了

建站经验

备案

备案对于国内网站来说是必不可少的一个环节,在腾讯云官网首页上就有备案的链接,如图:

按照要求一步步备案就好了,这里通常耗时较长,我的第一次备案差不多用了俩月可能还多,备案的过程中域名是不允许有解析的,也就是说,只要你要备案,你的网站必须是关闭的!所以对于有经验的站长来说,一般都是先备案,后建站,不然的话网站运行着好好的突然关了,不知道的人还以为你的网站倒闭了呢!或许有人不信邪,我就不备案咋了?不备案的话刚开始应该是没什么问题的,但使用一段时间之后,国内的服务商就会把你服务器的端口关掉,网站就用不了了,所以记住一句话:要建站,先备案!除非你用的是港服或者外服。

SSL

在访问例如腾讯云、百度等网站的时候,会在Chrome浏览器的网址栏看到这样一个绿色的小锁 ,感觉特别好,但是访问我自己的网站却只有一个灰色的感叹号http://dz.gl ,于是就想,我的网站能不能也有这样一个绿色小锁呢?又是一番各种姿势百度,知道了这个是https协议,需要有网站安全证书,到百度搜了一番,都好贵,舍不得花钱啊~但是峰回路转,发现腾讯云有免费的SSL证书,在管理中心-左上角云产品-SSL证书管理里边,如图:

点击申请证书,按提示操作之后就可以拥有自己的证书了,不过,这个证书只支持2级域名

之后在找到对应的证书并且在服务器上安装即可,我用的是Apache,所以把对应SSL证书(有三个文件)上传到服务器某目录下(例如我创建了PHPstudy/SSL文件夹并上传到该目录下),按照网上的教程修改配置文件,具体方法如下:

  1. 首先是确认ssl功能是否开启:找到PHPstudy/Apache/conf/httpd.conf这个配置文件中的LoadModule ssl_module modules/mod_ssl.so这句话是否前面有注释符#,如果有的话删掉注释符并保存;
    在PHPstudy/Apache/conf/httpd.conf中添加这样一句话:Include conf/vhost-ssl.conf 并保存;
    在PHPstudy/Apache/conf目录下创建vhost-ssl.conf文件,然后编辑(建议使用notepad++编辑,极不推荐记事本)之如下:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <VirtualHost *:443>
    ServerName www.dr34m.cn //这里改为你自己的域名,如果只有一个网站可以把这行删掉
    DocumentRoot "C:\WEB\dr34m" //这里是你的网站目录
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
    SSLCertificateFile "C:\phpStudy\ssl\downssl\1.crt" //证书公钥,大小为2.01KB左右
    SSLCertificateKeyFile "C:\phpStudy\ssl\downssl\3.key" //证书私钥
    SSLCertificateChainFile "C:\phpStudy\ssl\downssl\2.crt" //证书链,大小为1.88KB左右
    </VirtualHost>
    //有几个站点就写几个这样的一段代码
    <VirtualHost *:443>
    ServerName www.dr34m.cn
    DocumentRoot "C:\WEB\myhome"
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
    SSLCertificateFile "C:\phpStudy\ssl\homessl\1.crt"
    SSLCertificateKeyFile "C:\phpStudy\ssl\homessl\3.key"
    SSLCertificateChainFile "C:\phpStudy\ssl\homessl\2.crt"
    </VirtualHost>
  2. 重启phpstudy,然后访问https:// 再加上你的站点,是不是可以访问了?

注:如果遇到重启后无法开启Apache,通常是你的配置文件有问题,要有耐心,慢慢查找配置文件的错误。还有一种可能是你的证书公钥和证书链两个文件反了,颠倒过来即可。

301重定向

刚开始是在访问腾讯云的时候,发现无论输入的是qcloud.com,还是www.qcloud.com,或者是http://www.qcloud.com,最后访问的都是https://www.qcloud.com,这个可就挺好玩的了,刚开始以为是做的跳转,在qcloud.com目录下建立一个自动跳转到www.qcloud.com的网页,后来知道是做的301重定向,做301重定向的好处就是对搜索引擎友好。为什么要做301重定向呢?一方面,301重定向可以使例如qcloud.com跳转到www.qcloud.com,这样能增加www.qcloud.com的权重;另一方面,我们之前做的SSL证书用的是443端口,并且网址前缀是https,用301重定向可以使得例如http://www.qcloud.com跳转到https://www.qcoloud.com,没有这步跳转,那我们的SSL证书就白用了,301重定向的办法很多,我用到了其中两种,具体如下:

php做重定向

这种是用在例如qcloud.com跳转到www.qcloud.com上的,当然,有些网站的权重是放在没有www的网址上,把有www的跳转到没有www的网址上,也是同样的方法

  1. 在PHPstudy\WWW目录下新建文件index.php(对于这种情况就不需要在站点域名配置中添加权重网址了,但是权重网址还是要有的);
  2. 编辑该文件如下
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?php

    $the_host = $_SERVER['HTTP_HOST'];

    switch($the_host)
    {
    //下边的就是带www的网址作为权重网址的例子
    case 'dr34m.cn': //这里改为你的非权重网址
    {
    header('HTTP/1.1 301 Moved Permanently'); //301是永久重定向的意思
    header('Location:https://www.dr34m.cn/'); //这里改为你的权重网址
    }
    break;
    //下边的就是不带www的网址作为权重网址的例子
    case 'www.dz.gl':
    {
    header('HTTP/1.1 301 Moved Permanently');
    header('Location:http://dz.gl');
    }
    break;
    //下边则是不符合以上所有情况的例子,学过编程的应该都知道这些语法
    default:
    {
    header('HTTP/1.1 302 Moved Permanently'); //302则是临时重定向的意思
    header('Location:http://error.dr34m.cn/404.html'); //这里可以定向到你的404页面
    }
    }
    ?>

.htaccess做重定向

上边的php方法对于权重网站重定向来说无疑是一种简单的方法,但是对于http向https跳转则没办法了,这就需要.htaccess做重定向(这种方法同样适用于权重网站跳转),方法如下:

1.首先打开PHPstudy/Apache/conf/httpd.conf并检查LoadModule rewrite_module modules/mod_rewrite.so这句话前面有没有注释符#,有则删掉;
网站目录下创建.htaccess文件,这种以点开头的文件在windows下不好创建,通常使用dos命令来创建,或者用notepad++,新建一个文件,在保存的时候类型选择所有文件,文件名改为.htaccess,如图:
编辑该文件如下:

1
2
3
4
5
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://www.dr34m.cn/$1 [L,R=301] //改为你的站点
</IfModule>
  1. 这时候直接访问http:// 加上你的站点,是不是直接就能跳转到https:// 加上你的站点了?

在服务器上安装wordpress

wordpress是一个著名的博客系统,安装主要用到了mysql(phpstudy集成了),具体安装方法如下:

配置MySQL

  1. 首先修改mysql的密码(针对忘了密码或者不知道密码的童鞋),如图修改即可;
  2. 接着访问:http://你的IP/phpmyadmin 或者点击phpstudy上边的MySQL管理器—MySQL-front(如图)
  3. 新建一个数据库:如图,以在服务器端MySQL-front中操作为例:
    右击左侧localhost—新建—数据库

安装wordpress

  1. wordpress官网下载wordpress并上传到你的服务器某目录下;
  2. 访问”你的目录所绑定域名/wp-admin/install.php”,会出现如图:
  3. 按图操作:
  4. 如果数据库信息没有问题就会出现
  5. 接着按提示输入你的站点信息:
  6. 这样就可以拥有自己的博客或者论坛了
    关于windows建站经验就写到这里,以后我或许会改用linux,届时还会和大家分享,感谢阅读