SSD固态硬盘的磁盘性能虽然很高,但是如果它经常处于节能休眠模式,那么性能肯定会大打折扣的。并且对于固态硬盘这样的闪存设备来说,耗电量并不高,所以没有必要为了节能而限制它的性能,有些得不偿失。下面MS酋长就来分享一下从Windows10电源管理着手来阻止固态硬盘进入休眠节省状态,从而提升磁盘性能的技巧。 PS: 鉴于目前SSD存在SATA、M.2(NVMe)两种接口,在电源管理上这两者是不同的,所以下面MS酋长分类进行介绍。

适用于SATA SSD

一、为电源管理添加节能模式控制选项 右键点击Win10开始按钮,在弹出的菜单中选择“Windows PowerShell(管理员)”,打开“管理员: Windows PowerShell”窗口,输入并回车运行以下命令:

powercfg -attributes 0012ee47-9041-4b5d-9b77-535fba8b1442 0b2d69d7-a2a1-449c-9680-f91c70521c60 -ATTRIB_HIDE

然后打开“高级电源设置”窗口。方法是: 依然进入“Windows设置 - 系统 - 电源和睡眠”设置界面,点击底部的“其他电源设置”。如图:

改造Win10电源管理提升SSD固态硬盘性能

这时会打开“控制面板\硬件和声音\电源选项”窗口。如图:

改造Win10电源管理提升SSD固态硬盘性能

点击当前电源计划右侧的“更改计划设置”打开“编辑计划设置”窗口。如图:

改造Win10电源管理提升SSD固态硬盘性能

点击底部的“更改电源高级设置”即可打开“电源选项 - 高级设置”窗口。如图:

改造Win10电源管理提升SSD固态硬盘性能

展开“硬盘”设置项,你就可以看到刚刚添加的“AHCI Link Power Management - HIPM/DIPM”设置项了。 其下拉列表中几个选项的含义如下:

  • HIPM - 主机控制
  • DIPM - 设备控制
  • HIPM + DIPM - 混合控制
  • Lowest - 最低功耗模式
  • Active - 关闭节能模式

很明显,我们要保持SSD最佳性能,只需选择 Active 完全关闭节能模式即可。 二、为电源管理添加低功耗模式自适应选项 同样以管理员身份运行 Windows PowerShell ,输入并回车运行以下命令:

powercfg -attributes 0012ee47-9041-4b5d-9b77-535fba8b1442 dab60367-53fe-4fbc-825e-521d069d2456 -ATTRIB_HIDE

然后打开“高级电源设置”窗口,你就可以看到新增加的“AHCI Link Power Management - Adaptive”选项。如图:

改造Win10电源管理提升SSD固态硬盘性能

这里可以设置固态硬盘空闲后进入休眠状态的等待时间,设置的短一些可以让硬盘有更多机会休眠,降低功耗和发热量;设置的长一些则可以让硬盘减少休眠,更多地处于工作状态,节省唤醒时间,从而提升一定的性能。

适用于M.2(NVMe) SSD

对于越来越普及的M.2(NVMe) SSD,我们也可以在电源管理中添加类似于上面 Adaptive 的 Primary NVMe Idle Timeout 设置项,同样可以控制固态硬盘进入节能模式的等待时间。添加方法如下: 以管理员身份运行 Windows PowerShell ,输入并回车运行以下命令:

powercfg -attributes 0012ee47-9041-4b5d-9b77-535fba8b1442 d639518a-e56d-4345-8af2-b9f32fb26109 -ATTRIB_HIDE

然后你就可以在“高级电源设置”窗口中看到新增加的“Primary NVMe Idle Timeout”设置项了。 同样如果你想让硬盘性能高一些,就把这个时间设置得长一些。

适用于PCI-E NVMe SSD

另外还有一些基于PCI-E总线的NVMe SSD固态硬盘,这个我们可以按如下方法关闭节能模式保持硬盘性能: 在“高级电源设置”窗口中展开“PCI Express - 链接状态电源管理”。如图:

改造Win10电源管理提升SSD固态硬盘性能

把电源节省量设置为“关闭”,这样就可以避免固态硬盘进入节能模式从而保持硬盘性能。 不过需要注意的是,这一设置还会影响 PCI-E 显卡、USB 3.1 等其他PCI-E设备,所以电脑的总功耗和发热量会有所提高。

DropIt 是一款由意大利 Lupo PenSuite 软件研发团队精心设计与开发的体积小巧、功能精悍的得力文件综合批量管理助手,其内置了多项常用的文件与文件夹组织协议,人们也可以通过自定义协议来完成更为复杂的文件组织管理工作,支持文件拖拽操作及正则表达式、文件夹监视以及所有微软大众平台支持的文件操作方式。 资源来自网络,小编只收集共享,不收取任何费用 如果有一个全自动的文件管理工具,它能够帮你把所有的文件分门别类地放好、给重要的文件加密、还能给文件转格式,会不会迫不及待地想尝试一下? DropIt 就是这样一款全自动工具,来看一下它如何把各种文件给瞬间归类:

功能&特点: **✴拖放 -**简单地将文件与文件夹拖拽到目标图像上进行处理; **✴文件(夹)筛选器 –**通过名称、目录、大小、日期、属性、内容或者正则表达式; **✴文件夹监视 –**全自动处理检测已定义目录的文件与文件夹; **✴十八项操作 –**自动执行已匹配的文件与文件夹操作; **✴配置文件 –**在配置文件中收集协议并指定一个图像便于识别; **✴全面路径支持 –**支持绝对路径、相对路径以及共享文件夹 UNC 路径; **✴环境变量 –**支持内部、自定义和系统环境变量; **✴拓展用法 –**支持使用“发送到”与“命令行”处理文件与文件夹; **✴多国语言 –**可用的多国语言(含简、繁体中文)用户界面; **✴配置文件加密 –**支持使用密码加密保护你的配置文件; **✴活动日志 –**支持日志文件创建用于校验处理操作; **✴Unicode –**支持 Unicode 编码;

使用思路 我们先要了解一下 DropIt 的基本组成部分: 文件(Files):DropIt 处理的对象就是文件。可以是一个文件,也可以是一些文件、文件夹; 协议(Associations):对文件进行的操作被称为协议。一条协议由名称、规则、操作、具体配置这 4 个部分组成。名称是指这条协议的名字;规则是适用的文件类型,以分号隔开,比如我只想对压缩包文件操作,那规则就是 *.rar;*.zip;*.7z;操作是你想对文件进行的动作,比如「重命名」「移动」等;最后是这个操作的具体配置,不同的操作有不同的配置选项; 配置文件(Profiles):配置文件,可以看作单个协议的文件夹。我们可以通过它将协议归类,并且导出,用于分享。 最后,将文件拖到 DropIt 的图标上,就文件会根据这些协议进行相应的动作。 快捷调用 快捷调用 DropIt 的两种方式 作为一个效率工具,如何快捷调用它是一个重要的问题。在调用方面,DropIt 提供了 2 种方式: 将文件拖到图标上,执行: 选中文件,「右键 - 发送到 - 具体动作」。 DropIt 的默认使用方式是**将文件拖动到图标上,开始进行处理。**这样的处理方式很顺手,代价是 DropIt 的图标会遮挡一部分屏幕。

而在 Windows 的右键菜单中,内置了一项「发送到」功能。由于它的默认选择很少,除了「发送到桌面」以外都很鸡肋,经常被人忽视。 由于 DropIt 的操作全都是针对文件的,所以 DropIt 顺理成章地把所有配置文件都放到了右键的「发送到」菜单中。这使得 DropIt 本身不在运行时也可以正常使用它。 而另一个快捷调用 DropIt 的方法是:选中文件,「右键 - 发送到 - 具体动作」,同样可以对文件进行操作。

这个快捷菜单的出现,让 DropIt 不必长期运行,不需要开机启动,也能像使用系统自带的功能一样进行快捷操作。 DropIt 在执行命令前,会扫描一遍文件,并把即将做的操作汇报一遍。确认后才会执行。 如果你希望点击按钮后立即执行任务,可以在设置中勾选「加载好后立即开始处理」。这样就无需再次确认了。

配置文件 本文提供了一些的配置文件,放在了每一段的结尾。如何使用这些配置文件呢? 首先找到 DropIt 的安装目录,默认位置是 C:\Program Files\DropIt\。它的配置文件存放在这个目录下的 Profiles 文件夹中,也就是 C:\Program Files\DropIt\Profiles\ 目录中,再打开 DropIt 就可以看到配置文件了。

本文提供的配置文件 手动清除照片中的 EXIF 信息

配合 DropIt 使用,批量处理图片

将 PSD 源文件批量转换为 PNG 图片

高的效率的分拣

批量加密和解密

写在最后 新电脑操作系统用户由于不太重视文件、文件夹的分类管理操作,日积月累常年下来便使得计算机的各个驱动器内的文件杂乱无章,尤其对于办公人员来说根本不便于后期的文件查找及使用操作。DropIt可以帮助用户自动的对您所添加压缩文件、视频、音频、图片等文件进行自动分类,而且其能够根据自己的需要创建归档规则,从而能够帮助您更好的管理您的文件,有需要的用户不妨来看看吧!

1
2
3
4
# 防止tpl inc cfg文件被下载 
location ~* \.(tplinccfg)$ {
deny all;
}
1
2
3
4
5
# 套用CDN的情况返回真实IP
add_header X-Real-IP $http_x_real_ip;
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Real-IP;
real_ip_recursive on;
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
29
30
# SSL反代
server
{
listen 443;
server_name www.ccav.me ccav.me;
#rewrite ^/(.*) https://$server_name$1 permanent;
ssl on;
ssl_certificate /root/#PEM/CRT;
ssl_certificate_key /root/#KEY;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
#listen 80;
location / {
proxy_redirect www.B.com /;
proxy_pass https://www.B.com;
proxy_set_header Accept-Encoding "";
proxy_set_header User-Agent $http_user_agent;
proxy_set_header Accept-Language "zh-CN";
proxy_set_header X-Real-IP $remote_addr;

}
}

server
{
listen 80;
server_name www.ccav.me ccav.me;
rewrite ^(.*) https://$server_name$1 permanent;
}

介绍: PowerDNS 支持的一些特性: EDNS Client Subnet、DNSSEC、GEODNS、IPv6 等 同时 PowerDNS 支持超多的解析记录种类: A、AAAA、AFSDB、ALIAS(ANAME)、CAA、CERT、CDNSKEY、CDS、CNAME、DNSKEY、DNAME、DS、HINFO、KEY、LOC、MX、NAPTR、NS、NSEC、NSEC3、NSEC3PARAM、OPENPGPKEY、PTR、RP、RRSIG、SOA、SPF、SSHFP、SRV、TKEY、TSIG、TLSA、TXT、URI 等 至于 Web 前端,PowerDNS 官方推荐的是自家的 PowerAdmin,然后我比对了一下,都是万年不更新,但是 PowerAdmin UI 保持上世纪末期的风格,PowerDNS-Webinterface 好很多,同样水准下,当然是选择了更好看的后者啊。 工具: PowerDNS:https://www.powerdns.com PowerDNS-Webinterface:https://github.com/Spacefish/powerdns-webinterface 其它前端 PowerAdmin:http://www.poweradmin.org 参考http://arstech.net/install-powerdns-and-powerdns-webinterface-on-centos/ 拓展https://guozeyu.com/2016/08/self-host-dns/ 环境

Centos6 x64 PHP 5.6 Apache MariaDB 10+

本文章一切都是在为实现 rDNS 反向解析功能前提下进行的,并没有测试其它功能,不保证文章所述可以完全保证其它功能的使用。

PowerDNS 部分

安装 PowerDNS Mysql 版本

1
2
yum install -y epel
yum install -y pdns pdns-backend-mysql

修改配置文件 /etc/pdns/pdns.conf 我贴的是改好的,你只需要改配置文件底部的 Mysql 信息

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
setuid=pdns
setgid=pdns
launch=bind
# Autogenerated configuration file template
#################################
# add-superfluous-nsec3-for-old-bind Add superfluous NSEC3 record to positive wildcard response
#
# add-superfluous-nsec3-for-old-bind=no

#################################
# allow-axfr-ips Allow zonetransfers only to these subnets
#
# allow-axfr-ips=0.0.0.0/0,::/0

#################################
# allow-recursion List of subnets that are allowed to recurse
#
allow-recursion=0.0.0.0/0

#################################
# any-to-tcp Answer ANY queries with tc=1, shunting to TCP
#
# any-to-tcp=no

#################################
# cache-ttl Seconds to store packets in the PacketCache
#
# cache-ttl=20

#################################
# chroot If set, chroot to this directory for more security
#
# chroot=

#################################
# config-dir Location of configuration directory (pdns.conf)
#
# config-dir=/usr/local/etc

#################################
# config-name Name of this virtual configuration - will rename the binary image
#
# config-name=

#################################
# control-console Debugging switch - don’t use
#
# control-console=no

#################################
# daemon Operate as a daemon
#
# daemon=no

#################################
# default-ksk-algorithms Default KSK algorithms
#
# default-ksk-algorithms=rsasha256

#################################
# default-ksk-size Default KSK size (0 means default)
#
# default-ksk-size=0

#################################
# default-soa-mail mail address to insert in the SOA record if none set in the backend
#
# default-soa-mail=

#################################
# default-soa-name name to insert in the SOA record if none set in the backend
#
# default-soa-name=a.misconfigured.powerdns.server

#################################
# default-ttl Seconds a result is valid if not set otherwise
#
# default-ttl=3600

#################################
# default-zsk-algorithms Default ZSK algorithms
#
# default-zsk-algorithms=rsasha256

#################################
# default-zsk-size Default KSK size (0 means default)
#
# default-zsk-size=0

#################################
# direct-dnskey Fetch DNSKEY RRs from backend during DNSKEY synthesis
#
# direct-dnskey=no

#################################
# disable-axfr Disable zonetransfers but do allow TCP queries
#
# disable-axfr=no

#################################
# disable-tcp Do not listen to TCP queries
#
# disable-tcp=no

#################################
# distributor-threads Default number of Distributor (backend) threads to start
#
# distributor-threads=3

#################################
# do-ipv6-additional-processing Do AAAA additional processing
#
# do-ipv6-additional-processing=yes

#################################
# edns-subnet-option-number EDNS option number to use
#
# edns-subnet-option-number=20730

#################################
# edns-subnet-processing If we should act on EDNS Subnet options
#
# edns-subnet-processing=no

#################################
# entropy-source If set, read entropy from this file
#
# entropy-source=/dev/urandom

#################################
# experimental-json-interface If the webserver should serve JSON data
#
# experimental-json-interface=no

#################################
# experimental-logfile Filename of the log file for JSON parser
#
# experimental-logfile=/var/log/pdns.log

#################################
# fancy-records Process URL and MBOXFW records
#
# fancy-records=no

#################################
# guardian Run within a guardian process
#
# guardian=no

#################################
# include-dir Include .conf files from this directory
#
# include-dir=

#################################
# launch Which backends to launch and order to query them in
#
# launch=

#################################
# load-modules Load this module - supply absolute or relative path
#
# load-modules=

#################################
# local-address Local IP addresses to which we bind
#
local-address=0.0.0.0

#################################
# local-ipv6 Local IP address to which we bind
#
# local-ipv6=

#################################
# local-port The port on which we listen
#
local-port=53

#################################
# log-dns-details If PDNS should log DNS non-erroneous details
#
# log-dns-details=

#################################
# log-dns-queries If PDNS should log all incoming DNS queries
#
# log-dns-queries=no

#################################
# log-failed-updates If PDNS should log failed update requests
#
# log-failed-updates=

#################################
# logging-facility Log under a specific facility
#
# logging-facility=

#################################
# loglevel Amount of logging. Higher is more. Do not set below 3
#
# loglevel=4

#################################
# lua-prequery-script Lua script with prequery handler
#
# lua-prequery-script=

#################################
# master Act as a master
#
# master=no

#################################
# max-cache-entries Maximum number of cache entries
#
# max-cache-entries=1000000

#################################
# max-ent-entries Maximum number of empty non-terminals in a zone
#
# max-ent-entries=100000

#################################
# max-nsec3-iterations Limit the number of NSEC3 hash iterations
#
# max-nsec3-iterations=500

#################################
# max-queue-length Maximum queuelength before considering situation lost
#
# max-queue-length=5000

#################################
# max-tcp-connections Maximum number of TCP connections
#
# max-tcp-connections=10

#################################
# module-dir Default directory for modules
#
# module-dir=/usr/local/lib

#################################
# negquery-cache-ttl Seconds to store negative query results in the QueryCache
#
# negquery-cache-ttl=60

#################################
# no-shuffle Set this to prevent random shuffling of answers - for regression testing
#
# no-shuffle=off

#################################
# out-of-zone-additional-processing Do out of zone additional processing
#
# out-of-zone-additional-processing=yes

#################################
# overload-queue-length Maximum queuelength moving to packetcache only
#
# overload-queue-length=0

#################################
# pipebackend-abi-version Version of the pipe backend ABI
#
# pipebackend-abi-version=1

#################################
# prevent-self-notification Don’t send notifications to what we think is ourself
#
# prevent-self-notification=yes

#################################
# query-cache-ttl Seconds to store query results in the QueryCache
#
# query-cache-ttl=20

#################################
# query-local-address Source IP address for sending queries
#
# query-local-address=0.0.0.0

#################################
# query-local-address6 Source IPv6 address for sending queries
#
# query-local-address6=::

#################################
# query-logging Hint backends that queries should be logged
#
# query-logging=no

#################################
# queue-limit Maximum number of milliseconds to queue a query
#
# queue-limit=1500

#################################
# receiver-threads Default number of receiver threads to start
#
# receiver-threads=1

#################################
# recursive-cache-ttl Seconds to store packets for recursive queries in the PacketCache
#
# recursive-cache-ttl=10

#################################
# recursor If recursion is desired, IP address of a recursing nameserver
#
# recursor=no

#################################
# retrieval-threads Number of AXFR-retrieval threads for slave operation
#
# retrieval-threads=2

#################################
# security-poll-suffix Domain name from which to query security update notifications
#
# security-poll-suffix=secpoll.powerdns.com.

#################################
# send-root-referral Send out old-fashioned root-referral instead of ServFail in case of no authority
#
# send-root-referral=no

#################################
# server-id Returned when queried for ’server.id’ TXT or NSID, defaults to hostname
#
# server-id=

#################################
# setgid If set, change group id to this gid for more security
#
# setgid=

#################################
# setuid If set, change user id to this uid for more security
#
# setuid=

#################################
# signing-threads Default number of signer threads to start
#
# signing-threads=3

#################################
# slave Act as a slave
#
# slave=no

#################################
# slave-cycle-interval Reschedule failed SOA serial checks once every .. seconds
#
# slave-cycle-interval=60

#################################
# slave-renotify If we should send out notifications for slaved updates
#
# slave-renotify=no

#################################
# smtpredirector Our smtpredir MX host
#
# smtpredirector=a.misconfigured.powerdns.smtp.server

#################################
# soa-expire-default Default SOA expire
#
# soa-expire-default=604800

#################################
# soa-minimum-ttl Default SOA minimum ttl
#
# soa-minimum-ttl=3600

#################################
# soa-refresh-default Default SOA refresh
#
# soa-refresh-default=10800

#################################
# soa-retry-default Default SOA retry
#
# soa-retry-default=3600

#################################
# soa-serial-offset Make sure that no SOA serial is less than this number
#
# soa-serial-offset=0

#################################
# socket-dir Where the controlsocket will live
#
# socket-dir=/var/run

#################################
# tcp-control-address If set, PowerDNS can be controlled over TCP on this address
#
# tcp-control-address=

#################################
# tcp-control-port If set, PowerDNS can be controlled over TCP on this address
#
# tcp-control-port=53000

#################################
# tcp-control-range If set, remote control of PowerDNS is possible over these networks only
#
# tcp-control-range=127.0.0.0/8, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fe80::/10

#################################
# tcp-control-secret If set, PowerDNS can be controlled over TCP after passing this secret
#
# tcp-control-secret=

#################################
# traceback-handler Enable the traceback handler (Linux only)
#
# traceback-handler=yes

#################################
# trusted-notification-proxy IP address of incoming notification proxy
#
# trusted-notification-proxy=

#################################
# urlredirector Where we send hosts to that need to be url redirected
#
# urlredirector=127.0.0.1

#################################
# version-string PowerDNS version in packets - full, anonymous, powerdns or custom
#
# version-string=full

#################################
# webserver Start a webserver for monitoring
#
# webserver=no

#################################
# webserver-address IP Address of webserver to listen on
#
# webserver-address=127.0.0.1

#################################
# webserver-password Password required for accessing the webserver
#
# webserver-password=

#################################
# webserver-port Port of webserver to listen on
#
# webserver-port=8081

#################################
# webserver-print-arguments If the webserver should print arguments
#
# webserver-print-arguments=no

#################################
# wildcard-url Process URL and MBOXFW records
#
# wildcard-url=no

#################################
# xfr-max-received-mbytes Maximum number of megabytes received from an incoming AXFR
#
# xfr-max-received-mbytes=100

launch=gmysql
gmysql-host=localhost
gmysql-user=powerdns
gmysql-password=password
gmysql-dbname=powerdns

接着我们登录 mysql,创建一个名为 powerdns 的用户以及数据库,并导入以下数据

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
CREATE TABLE domains ( id                    INT AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
master VARCHAR(128) DEFAULT NULL,
last_check INT DEFAULT NULL,
type VARCHAR(6) NOT NULL,
notified_serial INT DEFAULT NULL,
account VARCHAR(40) DEFAULT NULL,
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE UNIQUE INDEX name_index ON domains(name);
CREATE TABLE records (
id INT AUTO_INCREMENT,
domain_id INT DEFAULT NULL,
name VARCHAR(255) DEFAULT NULL,
type VARCHAR(10) DEFAULT NULL,
content VARCHAR(64000) DEFAULT NULL,
ttl INT DEFAULT NULL,
prio INT DEFAULT NULL,
change_date INT DEFAULT NULL,
disabled TINYINT(1) DEFAULT 0,
ordername VARCHAR(255) BINARY DEFAULT NULL,
auth TINYINT(1) DEFAULT 1,
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE INDEX nametype_index ON records(name,type);
CREATE INDEX domain_id ON records(domain_id);
CREATE INDEX recordorder ON records (domain_id, ordername);
CREATE TABLE supermasters (
ip VARCHAR(64) NOT NULL,
nameserver VARCHAR(255) NOT NULL,
account VARCHAR(40) NOT NULL,
PRIMARY KEY (ip, nameserver)
) Engine=InnoDB;
CREATE TABLE comments (
id INT AUTO_INCREMENT,
domain_id INT NOT NULL,
name VARCHAR(255) NOT NULL,
type VARCHAR(10) NOT NULL,
modified_at INT NOT NULL,
account VARCHAR(40) NOT NULL,
comment VARCHAR(64000) NOT NULL,
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE INDEX comments_domain_id_idx ON comments (domain_id);
CREATE INDEX comments_name_type_idx ON comments (name, type);
CREATE INDEX comments_order_idx ON comments (domain_id, modified_at);
CREATE TABLE domainmetadata (
id INT AUTO_INCREMENT,
domain_id INT NOT NULL,
kind VARCHAR(32),
content TEXT,
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind);
CREATE TABLE cryptokeys (
id INT AUTO_INCREMENT,
domain_id INT NOT NULL,
flags INT NOT NULL,
active BOOL,
content TEXT,
PRIMARY KEY(id)
) Engine=InnoDB;
CREATE INDEX domainidindex ON cryptokeys(domain_id);
CREATE TABLE tsigkeys (
id INT AUTO_INCREMENT,
name VARCHAR(255),
algorithm VARCHAR(50),
secret VARCHAR(255),
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm);

下载 PowerDNS-Webinterface,导入文件夹内包含的 install.sql 文件,在进行前端数据库导入的时候,可能会出现 1 个 mysql 报错,忽略掉,不影响本文章功能实现的使用 到这里,PowerDNS 部署部分完成,我们使用下面的命令设置开机自启,以及立即启动 PowerDNS

1
2
chkconfig —levels 235 pdns on
/etc/init.d/pdns start

可以顺便验证下 PowerDNS 服务是否正常启动

1
2
netstat -an  grep 53
cat /var/log/messages //如果没有启动 检查日志

PowerDNS-Webinterface 部分

进入搭建好的 Web 环境根目录,导入 PowerDNS-Webinterface 中 / web 内的所有内容,并修改 \ configs\db.php 中的 mysql 信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php

/**
Please insert your MySQL Database in this configfile!
*/
$cfg[‘db’] = array(
”default” => array(
”host” => ”localhost”,
”port” => 3306,
”username” => ”powerdns”,
”password” => ”password”,
”database” => ”powerdns”,
)
);

删除安全文件,并设置 templates_c 文件夹权限

1
2
rm -rf web\tmp\templates_c\DELETEME
chmod 777 \web\tmp\templates_c\

这时候访问你搭建好的 PowerDNS-Webinterface,账号密码 admin/admin,登录后马上更改默认密码

设置 PTR 解析部分

切换至 Domains 菜单,添加你需要设置 rDNS 的 IP 段在解析记录中添加下面的内容

图中 ID 801-803 是示例 PTR 记录 这时可以使用 nslookup 来看效果 大功告成。 转自:https://ccav.me/self-built-dns-parsing-tool-powerdns-powerdnswebinterface.html

常用DNS服务器

名称

DNS 服务器 IP 地址

China IPv6 DNS

240C::6666

240C::6644

114 DNS

114.114.114.114

114.114.115.115

Ali DNS

223.5.5.5

223.6.6.6

Baidu DNS

180.76.76.76

2400:da00::6666

DNSPod DNS+

119.29.29.29

119.28.28.28

182.254.116.116

182.254.118.118

CNNIC SDNS

1.2.4.8

210.2.4.8

oneDNS

117.50.10.10

117.50.20.20

DNS 派 电信/移动/铁通

101.226.4.6

218.30.118.6

DNS 派 联通

123.125.81.6

140.207.198.6

Google (US)

8.8.8.8

8.8.4.4

2001:4860:4860::8888

2001:4860:4860::8844

Cloudflare (US)

1.1.1.1

1.0.0.1

2606:4700:4700::1111

2606:4700:4700::1001

IBM (US)

9.9.9.9

149.112.112.112

2620:fe::fe

2620:fe::9

OpenDNS (US)

208.67.222.222

208.67.220.220

2620:0:ccc::2

2620:0:ccd::2

HE (US)

74.82.42.42

66.220.18.42

2001:470:20::2

2001:470:0:9d::2

Comodo (US)

8.26.56.8

8.20.247.20

Verisign (US)

64.6.64.6

64.6.65.6

2620:74:1b::1:1

2620:74:1c::2:2

Neustar (US)

156.154.70.1

156.154.71.1

2610:a1:1018::1

2610:a1:1019::1

Dyn (US)

216.146.35.35

216.146.36.36

Alternate (US)

23.253.163.53

198.101.242.72

Level3 (US)

209.244.0.3

209.244.0.4

V2EX DNS

199.91.73.222

178.79.131.110

清华大学 DNS

101.6.6.6

2001:da8::666

中科大 DNS

202.141.162.123(中国电信)

202.38.93.153 (教育网)

202.141.176.93 (中国移动)

KT (KR)

168.126.63.1

168.126.63.2

SK (KR)

210.220.163.82

219.250.36.130

LG U+ (KR)

164.124.101.2

203.248.252.2

164.124.107.9

203.248.242.2

Yandex (RU)

77.88.8.8

77.88.8.1

2a02:6b8::feed:0ff

2a02:6b8:0:1::feed:0ff

SafeDNS (RU)

195.46.39.39

195.46.39.40

DNS.WATCH (DE)

84.200.69.80

84.200.70.40

2001:1608:10:25::1c04:b12f

2001:1608:10:25::9249:d69b

Uncensored (DK)

91.239.100.100

89.233.43.71

2001:67c:28a4::

2a01:3a0:53:53::

Freenom (NL)

80.80.80.80

80.80.81.81

各地电信DNS

名称

DNS 服务器 IP 地址

安徽电信 DNS

61.132.163.68

202.102.213.68

北京电信 DNS

219.141.136.10

219.141.140.10

重庆电信 DNS

61.128.192.68

61.128.128.68

福建电信 DNS

218.85.152.99

218.85.157.99

甘肃电信 DNS

202.100.64.68

61.178.0.93

广东电信 DNS

202.96.128.86

202.96.128.166

202.96.134.33

202.96.128.68

广西电信 DNS

202.103.225.68

202.103.224.68

贵州电信 DNS

202.98.192.67

202.98.198.167

河南电信 DNS

222.88.88.88

222.85.85.85

黑龙江电信

219.147.198.230

219.147.198.242

湖北电信 DNS

202.103.24.68

202.103.0.68

湖南电信 DNS

222.246.129.80

59.51.78.211

江苏电信 DNS

218.2.2.2

218.4.4.4

61.147.37.1

218.2.135.1

江西电信 DNS

202.101.224.69

202.101.226.68

内蒙古电信

219.148.162.31

222.74.39.50

山东电信 DNS

219.146.1.66

219.147.1.66

陕西电信 DNS

218.30.19.40

61.134.1.4

上海电信 DNS

202.96.209.133

116.228.111.118

202.96.209.5

108.168.255.118

四川电信 DNS

61.139.2.69

218.6.200.139

天津电信 DNS

219.150.32.132

219.146.0.132

云南电信 DNS

222.172.200.68

61.166.150.123

浙江电信 DNS

202.101.172.35

61.153.177.196

61.153.81.75

60.191.244.5

联通DNS服务器

名称

DNS 服务器 IP 地址

北京联通 DNS

123.123.123.123

123.123.123.124

202.106.0.20

202.106.195.68

重庆联通 DNS

221.5.203.98

221.7.92.98

广东联通 DNS

210.21.196.6

221.5.88.88

河北联通 DNS

202.99.160.68

202.99.166.4

河南联通 DNS

202.102.224.68

202.102.227.68

黑龙江联通

202.97.224.69

202.97.224.68

吉林联通 DNS

202.98.0.68

202.98.5.68

江苏联通 DNS

221.6.4.66

221.6.4.67

内蒙古联通

202.99.224.68

202.99.224.8

山东联通 DNS

202.102.128.68

202.102.152.3

202.102.134.68

202.102.154.3

山西联通 DNS

202.99.192.66

202.99.192.68

陕西联通 DNS

221.11.1.67

221.11.1.68

上海联通 DNS

210.22.70.3

210.22.84.3

四川联通 DNS

119.6.6.6

124.161.87.155

天津联通 DNS

202.99.104.68

202.99.96.68

浙江联通 DNS

221.12.1.227

221.12.33.227

辽宁联通 DNS

202.96.69.38

202.96.64.68

移动DNS服务器

名称

DNS 服务器 IP 地址

江苏移动 DNS

221.131.143.69

112.4.0.55

安徽移动 DNS

211.138.180.2

211.138.180.3

山东移动 DNS

218.201.96.130

211.137.191.26

四川移动 DNS

223.87.238.22

港澳台DNS服务器

名称

DNS 服务器 IP 地址

香港 (HK)

205.252.144.228

208.151.69.65

202.181.202.140

202.181.224.2

香港宽频 (HK)

203.80.96.10

203.80.96.9

HKNet宽频 (HK)

202.67.240.222

202.67.240.221

和记环球电讯 (HK)

202.45.84.58

202.45.84.59

NetFront前线 (HK)

202.81.252.1

202.81.252.2

Pacific SuperNet (HK)

202.14.67.4

202.14.67.14

CyberExpress (HK)

202.85.146.104

202.60.252.8

澳门 (MO)

202.175.3.8

202.175.3.3

HiNet (TW)

168.95.1.1

168.95.192.1

2001:b000:168::1

2001:b000:168::2

数位联合电信 (TW)

139.175.252.16

139.175.55.244

台湾网路资讯 (TW)

101.101.101.101

101.102.103.104

2001:de4::101

2001:de4::102

电脑硬盘是储存数据的设备,而硬盘速度快慢直接影响到系统的运行速度,现在使用固态硬盘的朋友越来越多,但还是有相当一部分用户还在使用机械硬盘,不知道平时会不会感觉机械硬盘越用越慢,导致系统各种卡顿呢?对于硬盘优化的文章有不少,但是能用的却不多,下面小编介绍的这几个Win10下优化机械硬盘的绝招大家可以学习一下。 方法一:机械硬盘4K对齐 4K对齐相信大家都知道,固态硬盘对4K对齐之后性能会好很多,其实机械硬盘也有必要进行4K对齐,读写速度都会有一定的提升哦。 1、下载分区助手专业版下载地址:分区助手专业版 2、选定你要4K对的磁盘,齐点击鼠标右键依次选择“高级操作”—“分区对齐”。以下以E盘为例:

jiaocheng/images/align-without-losing-data/align-without-losing-data1.png

2、点击“分区对齐”之后出现确定对齐的对话窗口,选择4K对齐点击确定。

方法二:优化索引

优化索相能提高系统在硬盘中搜索文件的速度,从而提高运行效率(不当当是用户手动搜索,系统使用中也有搜索行为) 1、我们先进入“此电脑”,在机械硬盘的盘符上使用鼠标右键选择属性,在弹出的界面上,去掉“除了文件属性外,还允许索引此驱动器上的文件内容”,这么操作可能会在我们搜索该磁盘文件时浪费大量的时间,但会让系统不再针对机械硬盘没事就建索引文件,避免不必要的卡顿呢。 索引 方法二:磁盘优化 还是在盘符属性中,切换选项卡到“工具”选择“优化”,在弹出窗口里点击“更改设置”,取消勾选其中的“按计划运行”。取消勾选其中的“按计划运行”。由于该功能对NTFS格式的作用并不明显,而且它是后台运行,占用一部分磁盘性能,所以取消的话对读写操作的速度提升都是有好处的。 QQ图片20180829162746 方法三:设置虚拟内存调用时机 虚拟内存是以电脑硬盘为数据交换的一个功能,是内存的补充,但是如果此时内存还够而不停的去使用硬盘来交换数据,势必占用硬盘性能,我们要做的就是优化这个地方 1、Win+R组合键后输入system.ini,用记事本等文本工具打开记事本。 system.ini 上面那个是系统中原文件的样子,我们需在在第一部分后添加 ConservativeSwapfileUsage=1 命令,意思是让系统在调用全部物理内存之后再使用虚拟内存进行数据交换。 之后在文本的末尾处把下面这些内容加上: [vcache] MinFileCache=4096 MaxFileCache=8096 通过设置最小4MB、最大8MB的内存空间用于缓存硬盘小文件读写,这样可以改善读写小文件的性能。 QQ图片20180829162918 好了,通过以上步骤优化机械硬盘之后,大家在使用中会有惊喜哦,总之硬盘快了,系统也快了。

什么是KMS?

Key Management Service(简称:KMS),这个功能是在 Windows Vista 之后的产品中的一种新型产品激活机制,目的是为了 Microsoft 更好的遏制非法软件授权行为 (盗版)。 [scode type=”green”] KMS 激活有两种方法,分别为 vlm­csd 和 py-kms,本文使用 vlm­csd 进行搭建 [/​scode]

为什么要自建KMS激活服务?

虽然现在网络上已经涌现了大批的激活工具,但是存在许多不安定因素,例如后门或者病毒等,会造成较大的安全隐患,而自己搭建 Kms 激活服务则可以避免这类问题~ 注意:只能激活 VL 版本的 Windows VL,就是 VOL,Volume Licensing for Organizations 的缩写,中文翻译为团体批量许可证


环境:CentOS 7.5 [but­ton color=”suc­cess” icon=”glyph­icon glyph­icon-file”]Vlmcsd[/but­ton] 首先使用下面命令确认机器的 CPU 架构

1
cat /proc/cpuinfo

这是我机器的信息

1.png

1.png

首先从Github下载项目文件

1
2
yum -y install wget
wget https://github.com/Wind4/vlmcsd/releases/download/svn1111/binaries.tar.gz

解压安装包

1
tar -xvf binaries.tar.gz

如果你机器的架构为 Intel,cd 到如下目录,否则的话需要在 binaries 目录内找到对应你机器 CPU 架构的目录

1
cd binaries/Linux/intel/static

启动服务

1
./vlmcsd-x64-musl-static

如果你的机器不是 64 位系统,则需要内找到对应系统位数的可执行文件来运行 因为 vlmcsd 运行后会占用 1688 端口,请在防火墙放行 1688 端口,或者关闭防火墙,所以我们可以输入以下命令查看是否成功启动:

1
netstat -lnp

激活

以管理员身份运行 CMD

1
2
3
slmgr /skms 你服务器的IP或者域名
slmgr /ato
slmgr /xpr

到这你的 KMS 服务应该可以正常使用了,激活周期为 180 天,到期后如果你的 KMS 服务器还在运行,Windows 将自动进行激活

0x01 前言

如果说 HTTP/​2 是当前互联网 Web 发展的讨论热点之一,那么下一个热点应该就是 TLS 1.3 了。 上次加密协议更新至今已有八年多,TLS 1.3 的最终版本现已于 2018 年 8 月发布。


0x02 当前的TLS协议存在问题

老版本的 SSL 协议被公认在完整性校验、密钥协商过程中有重大缺陷,因此,2011 年与 2015 年 IETF 小组相继声明禁止使用 SSL 2.0、3.0。 TLS 协议针对此前披露的漏洞做了相应的处理,但是因为其复杂性,还没有一个版本能真正保证绝对的安全。 目前最新版本的 TLS 1.2 发布距今已有九年时间,在此期间,许多 SSL/​TLS 协议的新漏洞被发现,比如针对其压缩机制的 CRIME 漏洞,针对 CBC 块加密模式的 BEAST 漏洞(主要是针对 SSL 3.0 和 TLS 1.0),早已不再是当初设计者认为的那么安全,人们迫切需要新的协议将其代替。


0x03 TLS 1.3有哪些变化?

  • TLS1.3 大幅提高安全性,还简化了握手过程,使第一次握手时只需要一个RTT,并在第二次访问时提供了 0-RTT 模式,提高了性能降低服务器压力。
  • 支持0-RTT数据传输
  • 废弃了3DES、RC4、AES-CBC等加密组件。废弃了SHA1、MD5等哈希算法。
  • 不再允许对加密报文进行压缩、不再允许双方发起重协商,密钥的改变不再需要发送change_cipher_spec报文给对方。
  • 握手阶段的报文可见明文大大减少。

0x04 TLS 1.3完整握手工作流

  • +表示该报文中值得注意的extension
  • *表示该内容也可能不被发送
  • {} 表示该内容使用handshake_key加密
  • [] 表示该内容使用application_key加密

0x05 速度优势

在 Web 性能方面,TLS 和加密连接总是增加了一些开销。HTTP / 2 肯定有助于解决这个问题,但 TLS 1.3 通过 TLS 错误启动和零往返时间(0-RTT)等功能帮助加速加密连接。 简单地说,使用 TLS 1.2,需要两次往返才能完成 TLS hand­shake。使用 1.3 时,它只需要一次往返, 从而将加密延迟减少一半。这有助于这些加密连接感觉比以前更快一点。


0x06 如何为自己站点启用TLS 1.3

演示环境:

  • 面板:宝塔面板 6.8.3
  • 系统:Centos 7.5
  • Nginx:1.15.6

修改网站配置文件

1
2
3
4
5
6
//替换
ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5;
//替换
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
//增加
add_header Strict-Transport-Security "max-age=31536000";

0x07 开启成功

TIM图片20181216133616.png

TIM图片20181216133616.png


0x08 总结

TLS 1.3 使用了复杂的密钥导出过程,增强了最终使用的密钥的安全性。同时简化了所使用的加密算法,废弃了 RC4、3DES、MD5、SHA1、AES-CBC 等加密算法,删除了压缩、重协商等具有漏洞的机制,大大精简了协议。 因此,TLS 1.3 如果能够得到普及,网络数据的传递将会变得更加安全、隐秘,TLS 1.3 的推广需要每一位开发者、运营者的认可和支持。 目前 TLS 1.3 虽然还在草案阶段,但是其基本原理和思想已经应用在了实际生活中,chrome 等浏览器都已准备好了对其的支持,期待 TLS 1.3 正式成为一个协议规范的那一天。

请注意,本文编写于 216 天前,最后修改于 188 天前,其中某些信息可能已经过时。

0x01 服务安装

1
yum install bind -y

0x02 修改named.conf

1
2
3
4
5
vim /etc/named.conf
//监听端口,默认为127.0.0.1,修改为any,监听所有地址的53端口,或删除此行配置,默认监听所有地址的53端口
listen-on port 53 { any; };,
//允许查询DNS服务器的来源,默认为localhost,修改为any代表允许所有来源,或删除此行配置,默认允许所有来源
allow-query { any; };

1
2
3
4
5
6
7
8
9
10
11
12
vim /etc/named.rfc1912.zones
#编辑named.rfc1912.zone,在末尾添加如下内容
#正向解析
zone "hello.com" IN {
type master;
file "mydomain.com.zone";
};
#反向解析
zone "1.168.192.in-addr.arpa" IN {
type master;
file "mydomain.com.local";
};

0x03 创建正解析文件

1
2
3
#复制模板
cd /var/named
cp -p named.localhost mydomain.com.zone
1
2
3
4
5
6
7
8
9
10
$TTL 1D
@ IN SOA mydomain.com. admin.mydomain.com (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns.mydomain.com.
dns IN A 192.168.1.125
@ IN A 192.168.1.122

0x04 创建反解析文件

1
2
#复制模板
cp -p named.localhost mydomain.com.local
1
2
3
4
5
6
7
8
9
10
$TTL 1D
@ IN SOA mydomain.com. admin.mydomain.com (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns.mydomain.com.
125 IN PTR dns.mydomain.com.
122 IN PTR mydomain.com.

0x05 主配置文件语法检查

1
named-checkconf -z /etc/named.conf

0x06 权限修改

1
2
3
4
#由于文件是在root用户下创建,named无法读取
#需要修改文件权限,否则会出现server can't find *: SERVFAIL错误
chown named mikuac.cn.zone
chown named mikuac.cn.loacl

0x07 端口开放

1
2
3
4
#开放TCP与UDP 53端口
firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --reload

0x08 服务启动

1
systemctl start named

0x01 Pi-Hole简介

Pi-Hole是一个比较好用的自建DNS去广告方案,除阻止广告外,Pi-hole还提供了一个信息丰富的Web界面,可显示网络上正在查询的所有域的统计信息。

0x02 开始安装

Pi-Hole GitHub地址 Pi-Hole文档

Pi-Hole 的安装还是比较简单的,只需要一行命令

1
2
3
4
#安装Curl
yum -y install curl
#安装Pi-Hole
curl -sSL https://install.pi-hole.net bash

开始安装

推荐使用的PHP版本,直接YES

提示系统上正在运行SELinux,一定要关闭SELinux,否则Web管理界面无法正常运行!!!

1
2
3
4
5
6
#临时关闭SELinux
setenforce 0
#永久关闭SELinux
vim /etc/sysconfig/selinux
#SELINUX=enforcing 改为 SELINUX=disabled
reboot

下面一路回车过去就行

首选DNS服务器,选Google就可以(忘了截图,从网上找了张)

广告过滤列表,可以根据自己需求选择,默认全选****广告过滤列表,可以根据自己需求选择,默认全选

选择协议,由于我暂时无IPV6,所以只勾选IPV4

确认IP信息

继续回车

是否安装Web管理界面,选择安装

这个也装,否则Web管理界面无法正常使用

日志,直接回车

隐私设置,默认即可

接下来继续等待安装完成

开放防火墙http和dns端口权限给Pi-Hole

安装完成,显示了默认密码,根据所显示信息上的地址与密码进入Web管理界面

以下为Web管理界面

点击左侧Login即可进入设置界面

至此,安装部分告一段落,使用教程后续会更新。

0%