95992828九五至尊2

折腾Ali云笔记,系统上采纳免费的

二月 22nd, 2019  |  九五至尊1老品牌值得

多年来洒家买了个Ali云云服务器ECS玩玩,尽管国内的服务器网速快,然则终归在天朝,有的地方玩得也是有个别不爽。以下是洒家那两日煎熬的记录。


域名 

洒家只是搞一个要好用的服务器,因而只需3个免费域名: http://www.freenom.com/ ,用Freenom
DNS Server 填上协调的IP即可。

九五至尊1老品牌值得 1

 

一、Let’s Encrypt 简介

Let’s Encrypt 是贰个 X.509 数字证书颁发机构。

在 Let’s Encrypt
创立从前,为网站签发证书基本上都以收费的(至少在那三个时候小编还没来看过免费的),而且价格不菲。那使得许多网站(尤其是小网站)玩不起
HTTPS。

二〇一五 年 Let’s Encrypt 创造将来,它就为全球提供了免费的 DV
证书签发服务。

就算 Let’s Encrypt 每张免费证书的有效期只有短短 90
天,比收费的证书的有效期短了一大截,不过 Let’s Encrypt
有四个自动化工具,可以落成证书的活动签发与立异,所以基本上可以忽略那么些标题。同时短有效期的证件也能非常快适应加密方法的发展与变化,对增强安全性有相当大的扶植。

总而言之,Let’s Encrypt 为网络安全作出了伟大的进献!

Let’s Encrypt 签发证书的长河辅助 DNS 以及 Web 验证方式。鉴于部分 DNS
解析商并不提供域名操作的
API,使得自动化陈设的难度大大扩大。所以可以的话依然尽量采用 Web 验证。

>>> Let’s Encrypt
官方网站
九五至尊1老品牌值得,
<<<


绕过备案

洒家弄好之后,用域名访问,出现了喜人的和谐提醒:

该网站目前不能访问

崇敬的用户,您好

很对不起,该网站一时半刻不或许访问,恐怕由以下原因造成:

案由一:未备案或未接入;依据《非经营性互连网音信服务备案管理措施》,网站必要形成备案或接入。请登录代备案管理种类开展操作。

缘由二:网站内容与备案消息不符或备案音信不可靠;依照《非经营性互连网新闻服务备案管理章程》,网站内容须要与备案音信相同,且备案音讯需真实有效。指出网站管理员尽快修改网站音讯。

工信部备案查询点此进入,购买云统计产品可领取降价券

备案?备个屁!

 由于有目共睹的原委,天朝的网站必要备案,可是经过极其繁琐。若是不备案,通过域名访问就会出现有肯定几率烦扰平常访问。

九五至尊1老品牌值得 2

 

任由为了自由或者省事,想绕过备案烦扰访问的话,可以(不理解能不可能从规律上干掉过滤):

  1. HTTP服务器监听其余的端口。近来来看好像只过滤80端口。

缺点:影响雅观

  1. 用HTTPS,加密流量就不会被搞(假使过滤暴发在“中间人”地点)

二 、示例环境

  • 操作系统:CentOS 7.4.1708
  • 网站域名:example.com
  • 网站目录:/usr/share/nginx/html
  • Web 服务器:Nginx(只有 HTTP 服务)

搞一个HTTPS证书

依然为了免费,洒家选拔了 https://startssl.com/ 

参考那篇教程,内容有点过时,可是经过基本一致: http://www.oschina.net/translate/switch-to-https-now-for-free?cmp

但是洒家做完了之后点击原文发现了2015年的更新: https://konklone.com/post/switch-to-https-now-for-free ,原我将来一度不引进应用startssl,转而引进SSLMate等。各位看官可以考虑一下。

主干流程大致就是登记,安装多个客户端证书,然后采取 Web Server SSL/TLS
Certificate。为了证实网站全体权,有二种艺术:(假设你的域名为example.com)

  1. 向 webmaster@example.com 等邮箱地址发一封邮件

  2. 下载七个 example.com.html 放到网站根目录,startssl
    会发出请求验证你的控制权

无不侧目2更简单,然则由于上述备案的苦恼,洒家尝试了过多遍都爱莫能助不奇怪验证通过(就像是百分百败诉的旋律)。无奈开头搭邮件服务器。

叁 、操作步骤

搭邮件服务器

出于并非经验,瞎JB折腾一夜间 Postfix + dovecot +
mysql,总是收不到邮件,总是被退信。一筹莫展之际,洒家考虑到目标只是接受一封邮件,想到有没有轻量级的程序完毕了SMTP协议?随便一搜(https://muffinresearch.co.uk/fake-smtp-server-with-python/),得到了一条命令:

sudo python -m smtpd -n -c DebuggingServer
localhost:25

关闭postfix、devecot服务,运转命令,依然收不到,于是洒家凭感觉改成:

sudo python -m smtpd -n -c DebuggingServer
0.0.0.0:25

发送邮件,验证码瞬间出现在终点上。

。 。 。 。 。 。

十多个布局文件瞎折腾一夜间,竟然不敌一条命令。

心痛运转。

可见对于只是吸纳一封邮件那种小事就不用挑战杂乱无章的各类配置文件了。

3.1 安装 EPEL 软件源

yum -y install epel-release && yum -y update

接轨申请证书

上面只要求粘贴一份CS奥迪Q5即可。用openssl的吩咐,或许startssl提供的工具生成:

九五至尊1老品牌值得 3

 

次第会收获二个私钥,保存好备用。把CS福睿斯粘贴到网站上,即可下载证书。

九五至尊1老品牌值得 4

 

3.2 安装 Let’s Encrypt 自动化工具

yum -y install certbot

设置证书

激活Apache的SSL模块,配置/etc/apache2/mods-enabled/ssl.conf。(略)

持续搞配置文件,以Apache为例,编辑 /etc/apache2/sites-enabled/000-default.conf 

九五至尊1老品牌值得 5

SSLCertificateChainFile 中继证书
SSLCertificateFile 服务器证书
SSLCertificateKeyFile 私钥文件

 

安插完上传私钥和证件,重启HTTP服务软件。

 九五至尊1老品牌值得 6

3.3 配置 Web 服务器

说明
要求安插网站的 /.well-known/acme-challenge/ 目录允许以 HTTP(不是
HTTPS)协议访问。

请使用 vim
之类的文件编辑器打开你的站点布局文件,然后依照下边的格式以及指示修改文件。

 # 下面是网站的 HTTP(不是 HTTPS)服务配置段
server { 
    listen       80 ;
    server_name  example.com;  # example.com 改为您的域名

    ### 加入的内容 ###
    location /.well-known/acme-challenge/ {
        root /usr/share/nginx/html;   # /usr/share/nginx/html 改为您网站所在的目录
    }
    #################

    其它配置项……
}

修改完结后纪念保存。

接下来实施以下命令让 Nginx 使用新的安插。

 systemctl reload nginx

Let’s Encrypt  更推荐的免费证书

2017年2月22日

鉴于谷歌(谷歌)现已不信任沃通的证件,洒家明日在StartCom上申请的证书直接证实退步。折腾了两日浏览器才察觉是证书本人的难题,只可以另请高明使用Let’s
Encrypt的证书。

Let’s Encrypt
的玩法至极简单,有法定推荐的工具使用ACME协议,也有此外的有的工具。

法定的工具: https://certbot.eff.org/

以Ubuntu 16.04 为例,安装:

$ sudo apt-get install python-letsencrypt-apache 

使用:

$ sudo letsencrypt --apache

其它洒家用的版本并不恐怕识别/etc/apache2/sites-enabled/里面3个文件三个Virtual
Host的情事,所以洒家把它们分成了多少个文本,三个文书三个ServerName,就足以辨认了。

3.4 配置 DNS 服务

请保管要提请证书域名的 A 记录或 AAAA 记录指向该 Web 服务器的公网 IP。

假诺应用了 Cloudflare 之类的 CDN 服务,大概需求一时关闭 CDN,大概利用
DNS 的措施讲明(本文不讲)。

互联网上的爬虫和恶心攻击者

洒家查看日志发现,互连网上有很多杂乱无章的爬虫和恶心的攻击者(弱口令攻击SSH)。

下图:远程登录SSH失败的:

九五至尊1老品牌值得 7

下图:网站上线就惨遭了来自世界本省的HTTP访问

九五至尊1老品牌值得 8

缓解方式:

/robots.txt 幸免有德行的爬虫

九五至尊1老品牌值得 9

SSH尝试弱口令的:屏蔽某些IP

3.5 申请证书

命令用法

/usr/bin/certbot certonly --webroot --webroot-path <网站目录> -d <网站域名> --agree-tos --email <您的邮箱地址>

举例

example.com 申请证书。

/usr/bin/certbot certonly --webroot --webroot-path /usr/share/nginx/html -d example.com --agree-tos --email example@example.com

运行结果

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org

-------------------------------------------------------------------------------
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about EFF and
our work to encrypt the web, protect its users and defend digital rights.
-------------------------------------------------------------------------------
(Y)es/(N)o:     #第一次申请证书的时候会问是否需要订阅邮件,我们不要,输入 n 回车。

Performing the following challenges:
http-01 challenge for example.com
Using the webroot path /usr/share/nginx/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/example.com/privkey.pem

   #如果出现以上信息,说明证书签发成功。如果有错误,请根据提示自行解决错误。

   Your cert will expire on 2018-05-14. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot
   again. To non-interactively renew *all* of your certificates, run
   "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Visual Attacker

为了有利于地翻看,洒家造了个车轱辘 Visual Attacker
(前端接纳百度Echarts)

九五至尊1老品牌值得 10

洒家写了肆个效益:

  • HTTP 访问(按IP地址记次数)
  • HTTP 访问(按地理地点记次数)
  • 水到渠成远程登录(按IP地址记次数)
  • 失利远程登录(按IP地址记次数)

落到实处简单,此处洒家就不贴代码了。

3.6 证书存放的地方

注明(包罗完整的证书链)的寄放地点为:

/etc/letsencrypt/live/<您的域名>/fullchain.pem

注明密钥的寄放地点为:

/etc/letsencrypt/live/<您的域名>/privkey.pem

说明
地方那五个文本其实是标志链接,在注解更新之后会自行指向最新的证书,无需手动干预。

 autoBanIp

[2016年9月16日 Update]洒家望着攻击者心痒痒,写了个机关ban ssh
弱口令的本子:

九五至尊1老品牌值得 11

等几天看看效果如何。

3.7 使用证书

请使用 vim
之类的文书编辑器打开你的站点布局文件,然后根据上面的格式以及提示修改文件。

# 下面是网站的 HTTPS 服务配置段(建议在原 HTTP 配置的基础上做修改)
server {
  listen 443    ssl http2;
  server_name    example.com;  # example.com 改为您的域名

  ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # 证书文件位置,example.com 改为您的域名
  ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # 证书密钥位置,example.com 改为您的域名



    #(可以不用设置 .well-known 目录的访问)

    其它配置项……
}

#----------------------------------------------------------#

# 下面是网站的 HTTP 服务配置段
server { 
    listen       80 ;
    server_name  example.com;  # example.com 改为您的域名

    location /.well-known/acme-challenge/ {
        root /usr/share/nginx/html;   # /usr/share/nginx/html 改为您网站所在的目录
    }

    location / {
        return 301 https://$server_name$request_uri;  # 将 HTTP 访问全部重定向至 HTTPS
    }
}

修改形成后回想保存。

接下来实施以下命令让 Nginx 使用新的安排。

 systemctl reload nginx

 2016-9-20 Update

活动封IP脚本照旧有功效的,活捉二只中国法国首都的攻击者。

九五至尊1老品牌值得 12

九五至尊1老品牌值得 13

再有部分国外的攻击者,明日逐个IP只尝试一遍。为了不惊动洒家本身的例行使用,必须写更复杂的规则才能处理。

九五至尊1老品牌值得 14

 2016年10月7日 Update

近些年打探到,有个更齐全的先后叫
fail2ban http://www.fail2ban.org/wiki/index.php/Main_Page 。有了这些就不用再行创设轮子了。

3.8 设置自动更新证书

说明

  1. 鉴于每一张证书的有效期为 90 天,所以每隔 二个月更新一回注解就够了。
  2. 只要安顿任务出现问题而造成证书得不到更新,Let’s Encrypt
    会发邮件提示您。

下边大家设定每隔 2 个月的 10 日 0 点整更新证书。更新成功之后让 Nginx
使用它。

履行以下命令:

crontab -e

下一场请在指令行窗口中按下
O(大写),将以下内容直接粘贴到命令行窗口中,再按下 ESC ,最终输入
:wq 按回车。

0 10 1 */2 * /usr/bin/certbot renew --agree-tos && /usr/bin/systemctl reload nginx

绑定四个域名

2016-9-19 Update

洒家前几日接到Ali云邮件,免费送 .top 域名,就搞了三个游戏。 万网规定:

 二零一六年十一月17日8点起,.com/.net域名注册成功后务必举办域名实名验证,否则域名会处于Serverhold状态,不能平时使用。 

犹如并不影响 .top 域名,反正洒家做完也能健康解析。

九五至尊1老品牌值得 15

瞎填了一通音讯模板,申请了二个域名,然后加了多少个子域名。洒家又申请了一张证书,搞到服务器上。

Apache设置,以Ubuntu为例,只须要安装 

/etc/apache2/sites-enabled/000-default.conf,增加:

<VirtualHost *:443>
        ServerName MyDomain.top
        DocumentRoot /var/www/html
        SSLEngine on
        SSLCertificateChainFile /path/to/chain.crt
        SSLCertificateFile /path/to/top.crt
        SSLCertificateKeyFile /path/to/top.key
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

接下来重启 apache2 服务即可访问。

④ 、注意事项

  1. 请不要频仍地报名证书。同3个域名十二日最两只可以申请 5 次。
  2. 请妥善爱抚好 /etc/letsencrypt/ 那一个目录,里面富含有证书以及密钥。
  3. 假如不慎走漏证书私钥,请即刻依照官网上的唤起注销证书。
  4. 出于证书签署的条条框框随时都有恐怕发生变化,所以本文具有时效性(公布于
    2018 年 2 月 13 日),仅供参考。

 总结

通过洒家一番折磨,挂上诸多实验的网站,加上favicon.ico,最后弄出个彩色的手机页面。

九五至尊1老品牌值得 16

 代理服务器

有时候洒家用手机不便于科学上网,一台代理配上本身搞的代办自动配置(韩文:Proxy
auto-config,简称PAC)是极好的。

洒家使用了某敌对势力做的某名牌软件的Linux版,监听0.0.0.0

九五至尊1老品牌值得 17

随时随处想翻就翻。感觉洒家的手机FQ须臾间便民了多如牛毛。

九五至尊1老品牌值得 18

 自动ban HTTP访问的IP

2016年10月7日 Update

诸君小朋友乱开扫描器是不佳的行为。洒家又造了个车轱辘:

九五至尊1老品牌值得 19

 那一个剧本的法则和上文提到的禁止ssh爆破的台本相同,都是使用inotify监控日志文件,发生变动的时候读取、分析日志,屏蔽IP。

相关文章

Your Comments

近期评论

    功能


    网站地图xml地图