Hyper-v安装OpenWrt

开启VT虚拟化 BIOS开启VT虚拟化技术,在Windows系统中开启自带的Hyper-v 新建Hyper-V虚拟机 下载OpenWrt映像文件openwrt.img,使用StarWind V2V Image Converter软件将img文件转化为vhdx虚拟机硬盘文件。

Proxmox安装OpenWrt

OpenWrt项目 OpenWrt官方项目地址:OpenWrt Downloads Coolsnowwolf/lede地址:GitHub - coolsnowwolf/lede: Lean’s LEDE source HelloWorld项目地址:GitHub - fw876/helloworld OpenWrt云编译: 使用 GitHub Actions 云编译 OpenWrt OpenWrt映像文件 openwrt-x86-64-generic-squashfs-combined-efi.img.gz 1 2 3 4 5 6 # 解压缩映像文件 gunzip openwrt-x86-64-generic-squashfs-combined-efi.img.gz ls openwrt-x86-64-generic-squashfs-combined-efi.img # 对新建虚拟机引入磁盘(新建虚拟机如下) qm importdisk 101 openwrt-x86-64-generic-squashfs-combined-efi.img local 新建Proxmox虚拟机

LetsEncrypt证书申请

Let’s Encrypt简介 Let’s Encrypt 是 一个叫 ISRG ( Internet Security Research Group ,互联网安全研究小组)的组织推出的免费安全证书计划。参与这个计划的组织和公司可以说是互联网顶顶重要的先驱,除了前文提到的三个牛气哄哄的发起单位外,后来又有思科(全球网络设备制造商执牛耳者)、 Akamai 加入,甚至连 Linux 基金会也加入了合作,这些大牌组织的加入保证了这个项目的可信度和可持续性。 部署 HTTPS 网站的时候需要证书,证书由 CA 机构签发,大部分传统 CA 机构签发证书是需要收费的,这不利于推动 HTTPS 协议的使用。 ​ Let’s Encrypt 也是一个 CA 机构,但这个 CA 机构是免费的!!!也就是说签发证书不需要任何费用。 ​ Let’s Encrypt 由于是非盈利性的组织,需要控制开支,他们搞了一个非常有创意的事情,设计了一个 ACME 协议,目前该协议的版本是 v1。 ​ 那为什么要创建 ACME 协议呢,传统的 CA 机构是人工受理证书申请、证书更新、证书撤销,完全是手动处理的。而 ACME 协议规范化了证书申请、更新、撤销等流程,只要一个客户端实现了该协议的功能,通过客户端就可以向 Let’s Encrypt 申请证书,也就是说 Let’s Encrypt CA 完全是自动化操作的。 ​ 任何人都可以基于 ACME 协议实现一个客户端,官方推荐的客户端是 Certbot 。 Let’s Encrypt通配符证书 在没有出现通配符证书之前,Let’s Encrypt 支持两种证书。 1)单域名证书:证书仅仅包含一个主机。 2)SAN 证书:一张证书可以包括多个主机(Let’s Encrypt 限制是 20),也就是证书可以包含下列的主机:www.example.com、www.example.cn、blog.example.com 等等。 ...

sudo配置与说明

什么是sudo sudo是用来执行需要提升权限的命令。 Sudo配置 1 # visudo sudo执行命令的流程 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo权限 确认用户具有可执行的权限后,让用户输入自己的密码确认 若密码输入成功,则开始执行sudo后续的命令 不需要密码的情况 root执行sudo时不需要输入密码(sudoers文件中有配置root ALL=(ALL)ALL这样一条规则) 要切换的身份与执行者的身份相同,不需要输入密码 /etc/sudoers文件设置为允许用户在不输入该用户密码的情况下使用所有命令 如设置允许wheel用户组中的用户在不输入该用户的密码的情况下使用所有命令 %wheel ALL=(ALL) NOPASSWD:ALL /etc/sudoers文件解释 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 ## cat /etc/sudoers ## 下面是规则配置:什么用户在哪台服务器上可以执行哪些命令(sudoers文件可以在多个系统上共享) ## Syntax: ##语法 ## user MACHINE=COMMANDS ## 用户 登录的主机=(可以变换的身份) 可以执行的命令 ## ## The COMMANDS section may have other options added to it. ## 命令部分可以附带一些其它的选项 ## ## Allow root to run any commands anywhere ## 允许root用户执行任意路径下的任意命令 root ALL=(ALL) ALL ## Allows members of the 'sys' group to run networking, software, ## service management apps and more. # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS ## 允许sys中户组中的用户使用NETWORKING等所有别名中配置的命令 ## Allows people in group wheel to run all commands # %wheel ALL=(ALL) ALL ## 允许wheel用户组中的用户执行所有命令 ## Same thing without a password ## 允许wheel用户组中的用户在不输入该用户的密码的情况下使用所有命令 # %wheel ALL=(ALL) NOPASSWD: ALL ## Allows members of the users group to mount and unmount the ## cdrom as root ## 允许users用户组中的用户像root用户一样使用mount、unmount、chrom命令 # %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom ## Allows members of the users group to shutdown this system # %users localhost=/sbin/shutdown -h now ## 允许users用户组中的用户像root用户一样使用shutdown命令 sudo执行命令的流程 sudo会话 sudo默认在输入一次密码后15分钟内不会再次要求密码。15分钟后,你会再次被要求输入密码。 ...

Vmware ESXi连接iSCSI

一、 设定VMkernal NIC 登陆VMware ESXi 导航器–>网络–>虚拟交换机–>添加标准虚拟交换机 前往导航器–>网络–>VMkernel 网卡–>添加VMkernel网卡 二、在Vmware ESXi上挂载iSCSI Target 挂载iSCSI Target,前往导航器–>存储–>适配器–>配置iSCSI 启动iSCSI 添加端口绑定,绑定上步添加VMkernel网卡端口 保存配置 前往导航器–>存储–>设备,然后按刷新。确认iSCSI适配器扫描到新的硬盘 可以修改下面的值使您的iSCSI服务更稳定 6.1 LoginTimeout:将数值从5修改到60 6.2 NoopTimeout:将数值从10修改到30 6.3 DelayedAck:取消勾选以关闭DelayedACK

为USBInjectAll.kext创建自定义SSDT

概述 在10.11版本中,Apple完全重写了USB驱动程序。新驱动程序似乎在很大程序上使用了ACPI,比以前的驱动程序更大。这给ACPI(DSDT)的正确性带来了更多的压力。如果不正确,存在的端口可能不会被新的驱动程序启用。 事实上,即使是Apple自己的产品也被发现是不正确的,因此Apple公司发明了一种方法用来一个端口注入器来覆盖DSDT。在事件属性被注入来定义可用端口时,这些属性将被使用而不是ACPI。 内置的端口注入器也可以干扰USB接口,因为一个给定型号的Mac的USB拓朴不太可能与你的PC相同。要解决这些问题,可能需要采取一些步骤。 注意本指南适用于英特尔USB3。第三方USB3,例如Asmedia,NEC/Renasas还是有问题的。这些控制器没有解决方案。对于不支持的USB3控制器(例如,不是英特尔生产的,不是睿思科技生产的)可以试试最新的GenericUSBXHCI.kext ...

AppleHDA声卡修补

1 计算编解码器命令和路径 1.1 获取解码器 首先,我们需要从linux获取音频编码器的转储。因此,进入USB/CD(或)完全安装的任何Linux发行版。并在终端中输入以下命令以在桌面上以文本格式获取转储。 1 2 3 4 5 cat /proc/asound/card0/codec#0 > ~/Desktop/codec_dump.txt # 或者 cat /proc/asound/card0/codec#1 > ~/Desktop/codec_dump.txt # 或者 cat /proc/asound/card0/codec#2 > ~/Desktop/codec_dump.txt ...

AppleTV伪装证书

1. AppleTV伪装预告片证书 1 openssl req -new -nodes -newkey rsa:2048 -out ~/Desktop/trailers.pem -keyout ~/Desktop/trailers.key -x509 -days 7300 -subj "/C=US/CN=trailers.apple.com" 这将在桌面上创建两个文件:trailers.key和trailers.pem。下一步运行: 1 $ openssl x509 -in ~/Desktop/trailers.pem -outform der -out ~/Desktop/trailers.cer && cat ~/Desktop/trailers.key >> ~/Desktop/trailers.pem 执行完上面的命令,您将得到3个证书文件 2. 使用Apple Configuration创建项目

DD-WRT安装与配置

DD-WRT配置 nvram命令 nvram具有多层含义。首先它是非可变性RAM(non-volatile RAM)的缩写,这种RAM是一种持久性内存,可在断电时保留数据。路由器内的闪存就是一种nvram。nvram命令用于管理硬件设置,这些设置保存在闪存的最后一块内。这个内存段通常称为“nvram”。nvram命令有不同版本,比如IBM、Cisco、Oracle和Apple版。DD-WRT内的nvram命令非常简单,因为它只是显示和更改分配给变量的颠倒以及删除变量。无选项情况下运行它可以看到选项和参数: 1 2 root@linksys:~# nvram usage: nvram [get name] [set name=value] [unset name] [show] nvram show显示了路由器上的所有设置,而且设置还不少。可以使用less将其分隔为一次一页: 1 root@linksys:~# nvram show | less 或是用grep查找特定的变量,比如: 1 root@linksys:~# nvram show | grep ssh 例如:如果你无意间禁用了WEB界面,但仍有telnet或SSH,可以以这种方式重新启用它: 1 2 3 root@linksys:~# nvram set hhtp_enable=1 root@linksys:~# nvram commit root@linksys:~# reboot 如果想清除任何值的变量可参考如下所示: ...

openvpn安装与配置

OpenVPN安装与配置 [!note] 文档概述 本文档详细介绍了OpenVPN的安装与配置方法,包括在Linux环境(Ubuntu)和DD-WRT路由器环境下的配置步骤。 简介 OpenVPN是一个用于创建虚拟专用网络加密通道的软件包,最早由James Yonan编写。OpenVPN允许创建的VPN使用公开密钥、电子证书、或者用户名/密码来进行身份验证。 它大量使用了OpenSSL加密库中的SSLv3/TLSv1协议函数库。 目前OpenVPN能在Solaris、Linux、OpenBSD、FreeBSD、NetBSD、Mac OS X与Microsoft Windows以及Android和iOS上运行,并包含了许多安全性的功能。它并不是一个基于Web的VPN软件,也不与IPsec及其他VPN软件包兼容。 基础知识点 为什么使用PKI而不是静态密码呢? 静态加密使用的是静态密钥,它容易设置,但是缺点是: 一次只能有一个客户端使用服务器 如果密钥遭到丢失,将带来不可挽回的损失 使用PKI允许一次使用多个客户端,每个客户端都有自己的密钥。服务器不必具有客户端的任何特殊知识。OpenVPN只需要提供我们即将设置的OpenVPN CA签署的证书。反之,客户端也会验证服务器的证书 OpenVPN CA密钥不应放在OpenVPN服务器上。它仅用于签署客户端的证书,因此应该存储在可以执行操作的地方,但不能被盗。一旦CA密码被盗,你将无法再信任该CA颁发的任何证书。 什么是Certificate Authority(CA)? 你可能在应用中遇到过TLS网站证书,通常证书在WEB上下文中有两个作用 加密浏览器与服务器之间的数据 确保流览器连接到目标网站 只有当浏览器信任某个证书颁发机构颁发的证书时,才可以执行第二个任务。任何人都可以制作证书,但它并不能保证证书是合法的拥有者。因为证书颁发机构可以带来可靠的额外保证,因此CA证书分为收费与免费,创建自己的CA以签署OpenVPN客户端证书是一种可以控制谁可以连接到OpenVpn服务器的有效方法。这样您的Openvpn服务器只会信任你要创建的CA签署的客户端证书。同样如果一个政府机构在互联网提供一些便民服务,那么如何有效的避免钓鱼网站的信息套取呢,注册收费的CA证书是个有效的方法。 [!tip] CA证书的作用 提供身份验证和信任链 防止中间人攻击 控制VPN接入权限 完美前向保密PFS(perfect forward secrecy) “perfect forward secrecy”则是由Christoph G. Günther在EUROCRYPT ’89提出的,其最初用于定义会话密钥交换协议的一种安全性。它的作用是保证密钥丢失之前的消息案全性或签名的不可伪造性。一般而言公钥是固定的,而密钥则随着时间进行更新。这个更新过程是单向的,因引也就保证了拿到当前的密钥,是无法恢复出以前的密钥,从而保证了前向安全。 Openvpn服务器配置我们将使用“perfect forward secrecy”,也就是说,加密的数据即使在前进的进候也会是秘密的。用于连接的证书和密钥不用于加密您的通讯数据。它们在传递数据时使用临时的加密密钥。默认情况下,这个临时密钥随着时间的推移每小时旋转一次。以这种方式,如果来不法份子收集了VPN数据包要想获得临时密钥那是不可能的,它允其量能够解密你最后一小时的数据。 在Openvpn服务器上配置了perfect forward secrecy你会在日志中看到每小时数据重置的情况。 1 2 3 4 5 6 7 8 Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 TLS: soft reset sec=0 bytes=51538/0 pkts=255/0 Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 VERIFY OK: depth=1, C=US, ST=RI, L=Quahog, O=Happy Go Lucky Toys, OU=inspections, CN=Happy Go Lucky Toys CA, name=EasyRSA, emailAddress=ca@happygoluckytoys.com Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 VERIFY OK: depth=0, C=US, ST=RI, L=Quahog, O=Happy Go Lucky Toys, OU=inspections, CN=client, name=EasyRSA, emailAddress=noreply@happygoluckytoys.com Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 Data Channel Encrypt: Cipher 'AES-256-CBC' initialized with 256 bit key Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 Data Channel Encrypt: Using 512 bit message hash 'SHA512' for HMAC authentication Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 Data Channel Decrypt: Cipher 'AES-256-CBC' initialized with 256 bit key Tue Jun 13 01:51:20 2017 client/142.68.135.226:53504 Data Channel Decrypt: Using 512 bit message hash 'SHA512' for HMAC authentication Tue Jun 13 01:51:21 2017 client/142.68.135.226:53504 Control Channel: TLSv1.2, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA256, 2048 bit RSA Openvpn允许您控制旋转周期以匹配偏执狂级别。在server.conf文件中配置reneg-sec xx控制关键周期是多少秒。 ...