Lexsion 发布的文章

OpenIPC系统博云摄像头替换minihttp

OpenIPC系统博云摄像头替换minihttp

前言

大佬Sean.Y发布了新编译的minihttp,功能方面添加了暗环境开红外切换黑白画面。我们只需要把摄像头中原来的文件替换一下即可用上新功能。本文就拿此事来水一下。

准备

1,已经刷好OpenIPC固件的摄像头
2,SSH工具软件
3,格式化为fat32的存储卡

正文

1,准备一张格式化为fat32的存储卡,使用之前刷固件的存储卡需注意删除相关固件文件,以免误操作再次刷机,给搞机带来不便。
2,获取minihttp 2020.04.24.zip文件,解压到存储卡,将存储卡插入摄像头。
3,运行以下命令检查能否看到存储卡中的minihttpminihttp.ini文件,能看到进行下一步:

ls /mnt/mmc

4,逐行运行以下命令杀掉minihttp进程,并将原来的文件重命名为[filename].old,以备后期万一想恢复到原来版本。

killall minihttp
mv /usr/bin/minihttp /usr/bin/minihttp.old
mv /etc/minihttp.ini /etc/minihttp.ini.old

5,逐行运行以下命令复制存储卡中相关文件到指定位置,并修改文件权限。

cp /mnt/mmc/minihttp /usr/bin/
chmod 755 /usr/bin/minihttp
cp /mnt/mmc/minihttp.ini /etc/
chmod 644 /etc/minihttp.ini

6,执行以下命令重启。

reboot

注:如果需要修改分辨率、运行的服务开关等配置,请使用vi编辑器编辑/etc/minihttp.ini文件。
注:若想恢复之前备份的版本请使用以下命令(删除当前版本文件并将备份的文件名字改回原始文件名,然后重启)

killall minihttp
rm -f /usr/bin/minihttp /etc/minihttp.ini
mv /usr/bin/minihttp.old /usr/bin/minihttp
mv /etc/minihttp.ini.old /etc/minihttp.ini
reboot

博云摄像头学习笔记

博云摄像头学习笔记

前言

偶然的机会得知,博云公司倒闭流出一批云摄像头。然后有一群大佬在为其做二次开发。这种学(jian)技(la)术(ji)的事情肯定不能落下我,遂入坑。截至本文发文,大佬们已经做出替换uboot,并发布了测试版本的固件。本文旨在以更详(luo)细(suo)的描述,对学习过程进行记录,也可用于引导小白入坑。本文内容是根据阅读大佬们写的文档,观察分享群中大家讨论的内容结合自己操作纂写,内容仅供参考。

操作警告:

为嵌入式设备刷入自定义固件是一个需要细心的事情。您可能会因此损坏您的设备,所以请务必小心操作!使用本指南和相关固件需要您自担风险。固件开发者和笔者都不会对您设备可能发生的损坏负责。

目录:

  • 准备
  • 拆机并连接TTL线
  • 备份原始固件(暂无)
  • 刷入新固件
  • 配置网络

准备:

1,2.5mm十字(PH0)螺丝刀;
2,USB转TTL线;
3,存储卡;
4,串口工具软件(本人使用PUTTY)

拆机并连接TTL线:

1,使用螺丝刀拆除底壳上的四颗螺钉(保修贴纸下有一颗)。小心打开底壳,注意不要扯断扬声器和Zigbee天线的连接线。在CC2530模块附近找到J3连接器空焊盘(3个排在一起),此处为TTL接口,此接口从方形焊盘处起,依次为GND、TXD、RXD。
2,设法连接USB转TTL模块,可使用烙铁焊接,亦可使用杜邦线、飞机勾等测试工具做可靠连接。将摄像头板的TXD连接到USB转串口小板的RXD,摄像头板的RXD连接到USB转串口小板的TXD,摄像头板的GND连接到USB转串口小板的GND。
注:TTL是这样的,TXD意思是发送,RXD意思是接收,GND表示电路中的0V电位处,一般连接到电源的负极,VCC为电源。A和B通过TTL通信,A的发送要连接B的接收;A的接收则连接B的发送;GND作为0电位的参考,直接连接。需要注意的是:VCC线一般不连接,因为目标板和TTL小板的电压不一定是相同的;且TTL小板取自电脑USB口的供电,输出能力有限,可能无法提供稳定的供电。仅当您十分清楚连接VCC后果时连接,否则可能出现损坏设备的危险!
3,接线检查无误,USB转TTL小板插入电脑USB口,因其有多种型号,根据不同型号的TTL转接小板,自行安装好驱动程序。笔者建议使用CH340或CP2102小板,不推荐PL2303。
4,安装好驱动后在电脑上的计算机图标上右击,打开管理,选择设备管理器(Win10可按快捷键Win+X,然后按M键进入设备管理器);在端口分支下查看自己的USB转TTL小板的串口端口号并记住,留作稍后连接时使用。

备份原始固件

此部分暂无,待大佬们补充

刷入新固件

1,将准备好的存储卡通过读卡器连接到电脑,请确保存储卡中没有重要文件,接下来的操作将清空存储卡中已有文件。在Windows资源管理器中右击对应盘符,选择格式化,设置文件系统为FAT32格式,勾选快速格式化,其他保持默认。点击开始,等待其格式化完成。
注:如果Windows系统的格式化功能没有FAT32选项,可使用Windows系统自带的Diskpart工具清空存储卡,并创建FAT32分区。按Win+R键打开运行对话框,输入diskpart回车,在打开的Diskpart工具窗口中输入list disk列出所有磁盘,找到存储卡对应的磁盘编号,输入select disk 存储卡编号回车选定要操作的磁盘为存储卡,输入clean命令清空存储卡,输入create partition primary创建主分区,输入format fs=fat32 quick快速格式化刚才创建的主分区为FAT32格式。
2,下载最新版本的固件,目前为firmware-20200420.tar.gz。将压缩包内的文件解压到存储卡中。安全弹出存储卡,将其插入摄像头板的存储卡插槽。
3,打开串口终端软件,选择串口协议(Serial),端口处选择或填入刚才记下的串口号,设置波特率为115200、数据位8、停止位1、无奇偶校验、无流控。确认设置正确并再次检查接线无误后打开串口,注意关闭中文输入法。
笔者使用PUTTY,下载合适版本安装并打开。在Session页面中的Connection type下选择Serial。在Category中点击进入Serial选项卡,在Select a serial line中输入上文记下的端口号,下面的Speed(baud)中填入115200,Data bits填8,Stop bits填1,Parity和Flow control皆选择None。点击Category中的Session回到Session页面,在Saved Sessions下输入一个好记的名字,点击Save保存以备下次串口意外中断后再次使用。最后检查设置无误后双击你设置的那个好记的名字打开串口,注意关闭中文输入法。
4,将摄像头板插电源线上电,随后开始不停按回车键。以中断uboot,不自动启动系统。直到出现类似以下内容停止按回车:

Partition 1: Filesystem: FAT32 "NO NAME    "
reading update.img
read update.img sz -1 hdr 64
update.img not found
Hit any key stop autoboot :  0
hisilicon #
hisilicon #
hisilicon #

注:如果5秒内没有进入这个界面,则可能中断失败了,断开摄像头板电源,使用读卡器连接电脑检查存储卡文件是否被损坏,若有损坏请重做前面操作制作存储卡升级工具(建议直接重新做卡)。然后重新上电尝试对其中断,依然不可建议检查USB转TTL小板是否可靠连接。
5,依次执行以下命令,每输入一行敲回车并等待其执行完毕,观察回显信息无异常后继续执行下一条:

sf probe 0
sf lock 0
fatload mmc 0 0x82000000 u-boot.20200419.bin
sf erase 0x0 0x80000
sf write 0x82000000 0x0 $(filesize)
reset

警告:若在执行fatload mmc 0 0x82000000 u-boot.20200419.bin命令后出现类似以下信息,请勿执行下一句命令!尝试检查存储卡中文件。否则必砖!

bad MBR sector signature 0x ...
** Unable to use mmc 0:1 for fatload **

注:以下正常回显信息供大家参考,若某一句命令执行后回显信息与此不同,请检查原因,切勿随意继续执行:

hisilicon # sf probe 0
16384 KiB hi_fmc at 0:0 is now current device
hisilicon # sf lock 0
unlock all block.
hisilicon # fatload mmc 0 0x82000000 u-boot.20200419.bin
reading u-boot.20200419.bin

273960 bytes read
hisilicon # sf erase 0x0 0x80000
Erasing at 0x80000 -- 100% complete.
hisilicon # sf write 0x82000000 0x0 $(filesize)
Writing at 0x42e28 -- 100% complete.
hisilicon # reset

6,随后摄像头板自动重启,重启后会自动开始升级,请观察串口输出,等待其升级完毕后摄像头自动进入OpenWrt。升级过程中请勿断电,升级完成后请取下存储卡,否则下次启动会自动再次进入升级。
注意:
若您已经刷过之前发布的旧版系统,升级后需要在进入OpenWrt后通过TTL接口执行firstboot命令清空配置,然后再继续下文的网络配置,否则会出现问题。

注意:
u-boot,kernel,rootfs这三个文件,是自动升级使用的,不要直接手动刷入分区。
如果需要自己手动将文件刷到分区,请使用以下这三个文件,手动刷入方式不在本文讨论范围内。
u-boot.20200419.bin
openwrt-hi35xx-18ev200-default-uImage
openwrt-hi35xx-18ev200-default-root.squashfs

配置网络

1,系统启动后,我们看到串口回显信息停止刷新时按回车键出现类似以下内容即可开始配置网络:

BusyBox v1.23.2 (2020-04-19 13:20:45 CST) built-in shell (ash)


 ___                  _  ___  ___
/   \ ___  ___  _  _ | ||   \/  _|
| | ||   \/ _ \| \| || || | || |
| | || | |  __/| \\ || ||  _/| |_
\___/|  _/\___||_|\_||_||_|  \___|.ORG
     |_|


root@ByunHawkeye:/#

2,运行以下命令用vi编辑器打开配置文件:

vi /etc/config/wireless

3,按i键进入插入模式( INSERT Mode),使用上下左右键移动光标到需要编辑的位置后面,使用Backspace键删除原来内容,输入自己的网络配置。以下部分内容中的option ssid,option keyoption encryption段需要修改为自己无线路由器的配置:

config wifi-iface
        option device 'wlan0'
        option network 'wan'
        option mode 'sta'
        option ssid 'OpenWrt'
        option key '1234567890'
        option encryption 'psk2'

以上option ssid是路由器无线网的名字,option key是无线网密码,option encryption是无线网加密方式。常见加密方式有以下几种:none(开放式无加密), wep, psk(WPA-PSK), psk2(WPA2-PSK)。需要根据自己无线路由器使用的加密方式填写。
4,修改完后确认无误,按ESC键退回到命令模式,输入wq,按回车键保存退出。
注:若修改过程中失误删除部分内容但并未保存,可按ESC回到命令模式后输入q!,按回车键不保存退出,再重新执行vi /etc/config/wireless打开即可。若该文件损坏丢失无法恢复其中内容,可尝试运行firstboot命令将系统恢复初始状态。
5,运行以下命令应用WIFI配置,并自动连接WIFI。

wifi

6,通过以上方式完成配网后运行以下命令可以在wlan0处看到摄像头的IP地址。

ifconfig

7,这样我们就可以通过浏览器输入摄像头IP访问OpenWrt管理页面,输入IP地址:8080看监控画面。
执行以下命令后连续两次输入新密码,修改root密码以备SSH登陆。

passwd

8,现在我们就可以摆脱USB转TTL线,使用SSH工具通过网络连接到摄像头了。
拆除TTL线,将摄像头重新装配。重新装配时,务必记得将天线插好。

使用U盘安装Kali系统

使用U盘安装Kali系统

前言

最近发现Kali系统默认的主题配色很好看,于是就萌生了在物理机上装一个用来学(Zhuang)习(Bi)的想法。就用我那台已经修了N遍,但还依然健在的辣鸡X200。这台辣鸡笔记本,P8700的CPU,3GRAM,千兆网口,还带一个RJ11接口。搭配一块辣鸡固态硬盘,干活非常趁手。

分区方案

虽然大家都不建议在电脑上安装双系统,且现在也已经不流行一台电脑安装多个操作系统了。但由于本人有使用此机器在Windows下工作的需求,所以还是选择安装了双系统。该机器之前是使用的Win7+Ubuntu方案,不要吐槽我Win7停止支持还继续用的问题。接下来将其变成Win7+Kali双系统,只要将Kali装到原来Ubuntu的位置即可,介绍一下分区方案。

硬盘使用的是MBR模式,共划分为5个区,因为MBR模式最多只能4个主分区,我创建了sda1~sda3三个主分区,分别为:sda1格式化为NTFS,容量100G,用于安装Win7;sda2格式化为ext4,大约40G,用于挂载根目录“/”;sda3格式化为swap,大约3G,用于做交换分区。sda4创建为扩展分区,再将其分为两个逻辑分区--sda5和sda6,sda5用于挂载Linux家目录“/home”,sda6格式化为NTFS,用于存储数据,以在两个系统下皆可访问。

安装过程

下载Kali安装镜像:

Kali的镜像可以在它的官网下载页面进行下载。这里我选择的是Kali Linux 64-Bit (Installer)2020.1b

可以尝试使用BT下载方式,或使用多线程下载工具,抑或是尝试使用迅雷下载。直接使用浏览器下载可能非常慢,且不支持断点续传便会很难受。

启动盘写入:

这里我使用的Universal USB Installer。这是个免费的工具软件,它预置了针对很多系统的写入方案。下载后运行工具,在License页面点击I Agree同意许可。在Step1中选择---Security and Penetration Testing---下的Kali Linux,Step2中选择刚才下载的kali安装镜像,Step3中选择要写入的U盘(U盘会被清空,注意备份)。点击Create,工具会提示让你再次确认操作,核实U盘选择正确后点击开始创建。当看到工具提示您结束后关闭工具,启动盘就做好了。

安装:

通过U盘安装系统,自然要让计算机从U盘启动。可以通过修改BIOS设置中启动顺序调整,将U盘调到第一序列。然后保存重启即可。大多数电脑进入BIOS的方法是开机时按DEL、F2、ESC中的某个按键。以上方法装完系统后需要再将设置的启动顺序改回来,否则可能出现插着U盘计算机不开机的情况。本人的X200支持另一种方式,开机时按F12进入启动媒体选择菜单,这个菜单只设置本次启动媒体,不会更改BIOS中的启动顺序。

插好U盘,按电源键开机,狂按F12,进入启动媒体选择菜单,选择U盘的名字。几秒后显示出U盘中Kali安装文件的启动菜单,这说明U盘已经引导成功了,我选择图形化安装模式,即Graphical install。稍作等待后出现图形化的安装向导。

首先是语言,按自己的需求选择语言,我选中文(简体),下一页提示我翻译不完整,有些地方可能用繁中和英文显示,问能不能看懂,否则不建议安装,这不废话嘛,看不懂也得上啊。然后选择地区,我选择了中国,计算机系统的地区不能随意设置,这关乎系统时钟的正常工作。接下来配置键盘映射,看了一下我的键盘布局,经验告诉我,要么接受建议的汉语,要么选英语美式键盘。这个要与自己键盘布局匹配的,否则打字会莫名奇妙出错。搞不好,设置密码都不知道自己设置的啥,那可惨了。

下一步安装程序会探测并挂载光盘,此时有可能会出现没有检测到的提示。如果出现此问题,按照网友提供的经验,可以尝试重新拔插安装U盘,有可能能解决问题。若依然不可用,可尝试按Ctrl+Alt+F2进入Shell,尝试运行fdisk -l命令列出所有磁盘分区,看安装U盘路径(比如我是/dev/sdb1),然后使用命令mount -t auto /dev/sdb1 /cdrom将U盘手动挂载到/cdrom下。然后按Ctrl+Alt+F5回到原来的图形安装界面。另外,在图形化安装界面的分区功能中也可查看U盘的路径。

按照提示设置用户名密码等配置信息,在分区功能中我选择重新格式化3个Linux下的分区,并设置好其原来功能对应的挂载点,应用并退出。

自此,应该就没有什么坑了,按照提示完成安装,等待其开机就可以使(Zhuang)用(Bi)了。

树莓派配置DS3231时钟模块

树莓派配置DS3231时钟模块

前言:

最近跟随大佬们撸电子垃圾,撸到了一台网络设备。这个设备有白色铁皮壳子,外面两根天线。打开外壳,内部有一块没有焊接USB口的树莓派 B+,通过一块扩展板连接了一枚RT5372无线网卡,并将一个USB口引出。里面有一枚16G存储卡,不知道里面啥系统,也懒得研究了。直接格式化并写入Raspbian系统。扩展板上还有一套基于DS3231 的RTC电路,测了一下,纽扣电池电量还很足,不利用起来岂不可惜?于是就有了本文。

读懂实践本文,你可能需要在技能树中点亮以下技能:
1:基本的Windows系统操作;
2:至少会使用一种工具连接到树莓派的Shell;(比如SSH工具或TTL线)
3:会为树莓派安装系统并进行初始配置;
4:基本电路知识以确保DS3231正确连接

准备:

1:安装好系统的树莓派;
2:可与树莓派连接的带电池DS3231模块;
3:与树莓派可靠的Shell连接

安装时钟模块:

本人的这台网络设备,它的DS3231时钟模块是连接在I2C1上面的,据了解市面上大多数可直插树莓派的时钟模块也是如此,因为I2C1附近易于获取电源为I2C模块供电。

1,使用gpio readall命令可以获取树莓派各IO口的状态,在此我们看到,SDA.1在40P接插件的3脚,SCL.1在5脚,3V3和GND分别在1、9脚。

 +-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
 |   2 |   8 |   SDA.1 | ALT0 | 1 |  3 || 4  |   |      | 5v      |     |     |
 |   3 |   9 |   SCL.1 | ALT0 | 1 |  5 || 6  |   |      | 0v      |     |     |
 |   4 |   7 | GPIO. 7 |   IN | 0 |  7 || 8  | 1 | ALT0 | TxD     | 15  | 14  |
 |     |     |      0v |      |   |  9 || 10 | 1 | ALT0 | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
 |  10 |  12 |    MOSI | ALT0 | 0 | 19 || 20 |   |      | 0v      |     |     |
 |   9 |  13 |    MISO | ALT0 | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
 |  11 |  14 |    SCLK | ALT0 | 0 | 23 || 24 | 1 | OUT  | CE0     | 10  | 8   |
 |     |     |      0v |      |   | 25 || 26 | 1 | OUT  | CE1     | 11  | 7   |
 |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
 |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
 |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
 |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
 |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
 |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
 |     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+

2:确保上面提到的四个插针可靠的与DS3231模块连接即可。

系统配置:

1:使用以下命令安装I2C工具。

sudo apt-get install -y python-smbus
sudo apt-get install -y i2c-tools

2:打开I2C功能。在Shell中输入sudo raspi-config打开树莓派配置工具,移动光标选择Interfacing Options,Enter键进入;移动光标选择I2C,将其设置为Enable后退出配置工具并使用sudo reboot命令重启树莓派。
3:测试时钟模块是否正常。使用sudo i2cdetect -y 1命令探测I2C通道1上的设备地址。若能检测到地址为0x68的设备,这表明树莓派可以正常与DS3231模块通信。
4:将DS3231添加到Device Tree中。使用sudo nano /boot/config.txt命令打开配置文件,在文件末尾添加以下一行代码,按Ctrl+X,输入Y,保存并退出。

dtoverlay=i2c-rtc,ds3231

5:使用sudo reboot命令重启树莓派,然后再次使用sudo i2cdetect -y 1命令,会发现原来的0x68地址处变成了UU,此信息表示该地址设备使用中。这表明,实时时钟已经正确配置了。
此时,我们可以使用以下命令与RTC通信了:

sudo hwclock -r 显示RTC时间
sudo hwclock -s 通过RTC时间设置系统时间
sudo hwclock -w 把系统时间写入RTC
sudo hwclock --set --date="2020-04-09 14:01:08" 修改RTC时间为任意值
sudo hwclock -h 获取帮助

通过Systemd配置同步:

上文中已经配置了DS3231 RTC模块,接下来我们需要让系统开机时自动从RTC中获取时间。据说以前的Linux系统启动采用init进程,此方案启动时间长,启动脚本复杂。后来有了Systemd,事情就变得简单了。笔者接触Linux较晚,当然要用新技术。本文通过创建两个Systemd配置文件分别实现开机读取RTC时间,关机时保存时间到RTC。
1:使用以下命令打开nano并准备创建/lib/systemd/system/hwclock-sync.service文件。

sudo nano /lib/systemd/system/hwclock-sync.service

2:在出现的nano窗口中输入以下内容:

[Unit]
Description=Sync time from RTC when startup
After=fake-hwclock.service
#After=network.target

[Service]
Type=oneshot
ExecStart=/sbin/hwclock -s
TimeoutSec=0

[Install]
WantedBy=multi-user.target

注:笔者系统中有fake-hwclock,所以配置为在fake-hwclock.service后面启动,若您的系统中没有这个软件包,请删除After=fake-hwclock.service行,并删除下一行的 # 号注释
3:按Ctrl+X,Y,Enter保存/lib/systemd/system/hwclock-sync.servic文件并退出。
4:使用以下命令打开nano并准备创建/lib/systemd/system/hwclock-save.service文件。

sudo nano /lib/systemd/system/hwclock-save.service

5:在出现的nano窗口中输入以下内容:

[Unit]
Description=Sync HardWare RTC to System Clock when Shutdown
DefaultDependencies=no
Before=shutdown.target

[Service]
Type=oneshot
ExecStart=/sbin/hwclock -w

[Install]
WantedBy=reboot.target halt.target poweroff.target

6:按Ctrl+X,Y,Enter保存/lib/systemd/system/hwclock-save.service文件并退出。
7:使用以下命令使以上两个配置文件开机启动:

systemctl enable hwclock-sync.servic hwclock-save.service

8:这样,我们就完成了时间同步的配置。

如何验证是否正常工作?或许首先应该排除网络时间同步(systemd-timesyncd.service)的干扰,然后大家自行研究,本文就不在此赘述了。

参考:

1:树莓派下 DS3231 时钟模块的配置(I2C接口)-树莓派实验室
2:Raspbian内建硬件驱动-Cocoonshu
3:树莓派模块:使用DS3231时钟模块
4:树莓派使用实时时钟DS3231-nick_zm
5:Linux systemd启动守护进程,service启动顺序分析及调整service启动顺序-MrWang_tju
6:Systemd 入门教程:命令篇-阮一峰
7:Systemd 入门教程:实战篇-阮一峰
8:计算机系统的时间-osoft
9:systemd关机流程 以及 自定义systemd关机脚本和服务-zhangatong

Win7 安装.Net Framework 4.8失败,提示:已处理证书链,但是在不受信任提供程序信任的根证书中终止。或:无法建立到信任根颁发机构的证书链

Win7 安装.net Framework 4.8失败,提示:已处理证书链,但是在不受信任提供程序信任的根证书中终止。或:无法建立到信任根颁发机构的证书链

前言:

在全新安装的Windows7 SP1中安装某些功能包、更新包时可能会出现证书信任的错误。比如我在安装.NET Framework 4.8时遇到了此问题,安装过程中提示:无法建立到信任根颁发机构的证书链。又比如,我在另一次安装中提示:已处理证书链,但是在不受信任提供程序信任的根证书中终止。经过查询相关资料了解到,这是由于没有更新Windows的某些证书引起的,如果计算机可以正常连接Windows Update,更新可以解决问题。但是因为某些原因,我们所处的网络环境可能无法很好的连接到Windows Update,这种情况我们便需要通过其他方法解决这个问题。
批注 2020-03-05 015300.jpg

Windows 7DotTest-2020-03-05-16-46-13.png

操作过程:

经过查询Microsoft官方支持库中的文档,我们找到了相关解决方案:将新的证书导入到操作系统中“受信任的根证书颁发机构”。

1.下载 Microsoft Certificate Authority 2011 证书,请访问 Microsoft Root Certificate Authority 2011。此链接指向微软官方网站,请放心食用~~

文件下载地址:http://go.microsoft.com/fwlink/?linkid=747875&clcid=0x409

2.按Windows徽标键+R键打开运行对话框,输入:certmgr.msc ,点击确定,打开Microsoft管理控制台中的证书管理单元。

Windows 7DotTest-2020-03-05-17-00-57.png

3.从管理单元界面左侧的导航栏中展开:受信任的根证书颁发机构 。在其下的证书目录上右击,选择:所有任务导入

Windows 7DotTest-2020-03-05-17-13-25.png

4.在弹出的证书导入向导中点击下一步,在接下来的页面中点击浏览...,在弹出的打开对话框中选择刚才下载的证书文件,点击下一步。

Windows 7DotTest-2020-03-05-17-19-57.png

5.在接下来的证书存储页面中,默认的配置应为:将所有的证书放入下列存储,受信任的根证书颁发机构,保持默认,点击下一步即可。在最后的页面中确认配置无误后点击完成即可完成证书的导入。

Windows 7DotTest-2020-03-05-17-23-34.png

6.若弹出安全性警告WIndows不能确认证书是否来...您是想安装此证书吗?的提示,请核对指纹确认安全后点击完成证书的导入。

指纹:8f 43 28 8a d2 72 f3 10 3b 6f b1 42 84 85 ea 30 14 c0 bc fe
Windows 7DotTest-2020-03-05-17-32-51.png

完成证书的导入后即可关闭管理单元界面,重新尝试安装所需的功能包、更新包。如图,我已经安装成功了。

Windows 7DotTest-2020-03-05-17-37-26.png

参考:

1:Windows Vista SP2、Windows Server 2008 SP2、Windows 7 SP1 和 Windows Server 2008 R2 SP1 中适用于 .NET Framework 4.6.1/4.6 的安全更新程序 3136000 和适用于 .NET Framework 4.5.2 的安全更新程序 3135996 的已知问题
https://support.microsoft.com/zh-cn/help/3149737/known-issue-for-security-update-3136000-for-the-net-framework-4-6-1-4

2:直接下载 Microsoft Certificate Authority 2011 证书

http://go.microsoft.com/fwlink/?linkid=747875&clcid=0x409

3:Download .NET Framework

https://dotnet.microsoft.com/download/dotnet-framework

整理部分Linux主机测试脚本

整理部分Linux主机测试脚本

前言

本文整理了部分大佬的Linux主机测速脚本,方便本人使用,也介绍给大家。

千影大佬的脚本:

此脚本来自千影大佬。网站地址:https://www.94ish.me
千影大佬将此脚本命名为:Linux性能/网络测试综合脚本。可见此脚本功能非常全面。根据大佬介绍,此脚本支持以下功能:

  • 获取系统基本信息
  • 测试硬盘存取延迟iops存取速度
  • 测试本机带宽
  • 测试本机到25个国外节点下载速度
  • 测试本机到8个国内节点下载速度
  • 测试本机到国内9个节点的路由
  • 测试本机到国内9个节点的延迟与丢包

使用以下命令下载脚本:

wget https://raw.githubusercontent.com/chiakge/Linux-Server-Bench-Test/master/linuxtest.sh -N --no-check-certificate

运行说明:

#不含UnixBench的测试,无网页分享
bash linuxtest.sh

#不含UnixBench的测试,带网页分享
bash linuxtest.sh s

#含UnixBench的测试,不带网页分享
bash linuxtest.sh a

#含UnixBench的测试,带网页分享
bash linuxtest.sh as

#网页分享不包含任何VPSip信息

测试样本:

========== 开始记录测试信息 ==========
测试时间:2018-05-13 12:12:31
----------------------------------------------------------------------
CPU model            : Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz
Number of cores      : 1
CPU frequency        : 1999.830 MHz
Total size of Disk   : 59.0 GB (0.6 GB Used)
Total amount of Mem  : 512 MB (205 MB Used)
Total amount of Swap : 512 MB (10 MB Used)
System uptime        : 0 days, 9 hour 30 min
Load average         : 0.07, 0.02, 0.00
OS                   : Debian GNU/Linux 8
Arch                 : x86_64 (64 Bit)
Kernel               : 2.6.32-042stab127.2
ipaddr               : 美国 加利福尼亚州 洛杉矶  colocrossing.com
vm                   : openvz
----------------------------------------------------------------------
===== 开始硬盘性能测试 =====
ioping: seek rate
    min/avg/max/mdev = 39.9 us / 61.8 us / 37.3 ms / 345.1 us
ioping: sequential speed
    generated 14.4 k requests in 5.00 s, 3.52 GiB, 2.88 k iops, 720.3 MiB/s
===== 硬盘性能测试完成 =====
----------------------------------------------------------------------
===== 开始speedtest =====
Retrieving speedtest.net configuration...
Testing from ColoCrossing (198.23.239.***)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Time Warner Cable (Los Angeles, CA) [0.74 km]: 4.27 ms
Testing download speed................................................................................
Download: 462.86 Mbit/s
Testing upload speed................................................................................................
Upload: 491.93 Mbit/s
Share results: http://www.speedtest.net/result/7306266209.png
===== speedtest完成 =====
----------------------------------------------------------------------
Node Name:                      IPv4 address:                  Download Speed
CacheFly:                       205.234.175.175:          81.66 MiB/s |  653.25 Mbps
Linode, Tokyo, JP:              106.187.96.148:            6.48 MiB/s |   51.85 Mbps
Linode, Tokyo2, JP:             139.162.65.37:             3.56 MiB/s |   28.46 Mbps
Linode, Singapore, SG:          139.162.23.4:              2.23 MiB/s |   17.86 Mbps
Linode, Fremont, CA:            50.116.14.9:               7.88 MiB/s |   63.06 Mbps
Linode, Newark, NJ:             50.116.57.237:             7.56 MiB/s |   60.45 Mbps
Linode, London, UK:             176.58.107.39:             4.52 MiB/s |   36.16 Mbps
Linode, Frankfurt, DE:          139.162.130.8:             2.22 MiB/s |   17.76 Mbps
Softlayer, Tokyo, JP:           161.202.125.20:            2.48 MiB/s |   19.86 Mbps
Softlayer, Singapore, SG:       119.81.28.170:             4.08 MiB/s |   32.64 Mbps
Softlayer, Seoul, KR:           119.81.28.170:             5.76 MiB/s |   46.09 Mbps
Softlayer, HongKong, CN:        119.81.130.170:            5.56 MiB/s |   44.49 Mbps
Softlayer, Dallas, TX:          169.48.124.82:            10.88 MiB/s |   87.07 Mbps
Softlayer, Seattle, WA:         67.228.112.250:           18.33 MiB/s |  146.61 Mbps
Softlayer, Frankfurt, DE:       159.122.69.4:              3.15 MiB/s |   25.18 Mbps
Softlayer, Paris, FR:           159.8.64.212:              3.58 MiB/s |   28.67 Mbps
Leaseweb, HongKong, CN:         43.249.36.49:              3.46 MiB/s |   27.68 Mbps
Leaseweb, Singapore, SG:        103.254.153.18:            6.09 MiB/s |   48.74 Mbps
Leaseweb, Washington D.C., US:  207.244.94.80:            14.61 MiB/s |  116.92 Mbps
Leaseweb, San Francisco, US:    209.58.135.187:           44.27 MiB/s |  354.13 Mbps
Leaseweb, Netherlands, NL:      5.79.108.33:               1.09 MiB/s |    8.70 Mbps
OVH, Montreal, CA:              192.99.19.165:             8.55 MiB/s |   68.39 Mbps
ChinaTelecom, Shanghai, CN:     101.95.48.41:            771.88 KiB/s |    6.03 Mbps
ChinaTelecom, Beijing, CN:      60.247.96.2:               6.16 MiB/s |   49.31 Mbps
ChinaUnicom, Beijing, CN:       61.135.202.2:             20.94 KiB/s |    0.16 Mbps
ChinaTelecom, Guangzhou, CN:    119.145.88.166:          706.60 KiB/s |    5.52 Mbps
ChinaMobile, Guangzhou, CN:     221.179.46.218:            2.44 KiB/s |    0.02 Mbps
ChinaTelecom, Hefei, CN:        61.191.111.11:             6.07 MiB/s |   48.55 Mbps
ChinaUnicom, Hefei, CN:         112.122.10.26:            24.36 KiB/s |    0.19 Mbps
ChinaMobile, Hefei, CN:         120.209.140.60:           10.31 KiB/s |    0.08 Mbps
Hinet, Taiwan, TW:              210.61.132.1:              2.43 MiB/s |   19.42 Mbps
----------------------------------------------------------------------
===== 测试 [四川电信] 的回程路由 =====
traceroute to 125.64.38.178 (125.64.38.178), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.09 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.9  0.72 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.158)  9.17 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  213.248.92.130  1.13 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  202.97.50.234  3.79 ms  AS4134  美国 加利福尼亚州 洛杉矶 电信
 6  202.97.52.161  264.52 ms  AS4134  中国 广东 广州 电信
 7  *
 8  202.97.94.133  274.12 ms  AS4134  中国 广东 广州 电信
 9  202.97.36.222  299.99 ms  AS4134  中国 四川 成都 电信
10  *
11  118.123.217.86  302.58 ms  AS38283  中国 四川 成都 电信
12  *
13  125.64.38.178  297.95 ms  AS38283  中国 四川 成都 电信

===== 回程 [四川电信] 路由测试结束 =====
===== 测试 [北京电信] 的回程路由 =====
traceroute to 106.120.243.142 (106.120.243.142), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.32 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.9  0.21 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.158)  0.39 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  213.248.92.130  5.29 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  202.97.50.234  7.61 ms  AS4134  美国 加利福尼亚州 洛杉矶 电信
 6  202.97.52.169  256.38 ms  AS4134  中国 北京 电信
 7  202.97.85.29  223.65 ms  AS4134  中国 北京 电信
 8  202.97.48.245  229.90 ms  AS4134  中国 北京 电信
 9  *
10  2.254.120.106.static.bjtelecom.net (106.120.254.2)  250.87 ms  AS4847  中国 北京 电信
11  142.243.120.106.static.bjtelecom.net (106.120.243.142)  221.05 ms  AS4847  中国 北京 电信

===== 回程 [北京电信] 路由测试结束 =====
===== 测试 [北京联通] 的回程路由 =====
traceroute to 103.254.70.52 (103.254.70.52), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.32 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.9  0.17 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.158)  3.51 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  213.248.92.130  6.09 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  202.97.50.234  0.51 ms  AS4134  美国 加利福尼亚州 洛杉矶 电信
 6  202.97.25.233  258.66 ms  AS4134  中国 电信
 7  202.97.84.213  283.28 ms  AS4134  中国 北京 电信
 8  202.97.53.25  281.32 ms  AS4134  中国 北京 电信
 9  *
10  *
11  *
12  119.40.40.74  436.57 ms  AS4847  中国 北京 cnispunion.org 联通
13  *
14  103.254.70.52  269.65 ms  AS4808,AS4847  中国 北京 联通/电信

===== 回程 [北京联通] 路由测试结束 =====
===== 测试 [北京移动] 的回程路由 =====
traceroute to 218.205.152.14 (218.205.152.14), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.29 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.13  0.23 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.156)  0.50 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  chinamobile-ic-327136-las-b24.c.telia.net (62.115.37.99)  96.87 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  223.120.6.17  97.05 ms  AS58453  美国 加利福尼亚州 洛杉矶 移动
 6  223.120.13.14  314.15 ms  AS58453  中国 移动
 7  *
 8  *
 9  *
10  *
11  *
12  *
13  218.205.152.14  348.18 ms  AS56048  中国 北京 移动

===== 回程 [北京移动] 路由测试结束 =====
===== 测试 [上海移动] 的回程路由 =====
traceroute to 117.131.14.202 (117.131.14.202), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.31 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.13  53.19 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.156)  1.21 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  chinamobile-ic-327136-las-b24.c.telia.net (62.115.37.99)  97.32 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  223.120.6.17  97.42 ms  AS58453  美国 加利福尼亚州 洛杉矶 移动
 6  *
 7  *
 8  *
 9  221.183.25.189  344.80 ms  AS9808  中国 上海 移动
10  221.176.22.9  344.28 ms  AS9808  中国 上海 移动
11  *
12  *
13  *
14  *
15  117.131.14.202  345.54 ms  AS24400  中国 上海 移动

===== 回程 [上海移动] 路由测试结束 =====
===== 测试 [上海电信] 的回程路由 =====
traceroute to 211.144.205.58 (211.144.205.58), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.30 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.9  0.42 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.158)  13.91 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  chinaunicom-ic-155914-las-bb1.c.telia.net (213.248.82.206)  274.78 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  219.158.96.25  273.72 ms  AS4837  中国 北京 联通
 6  219.158.3.137  308.87 ms  AS4837  中国 北京 联通
 7  219.158.5.149  316.10 ms  AS4837  中国 北京 联通
 8  219.158.16.90  286.87 ms  AS4837  中国 上海 联通
 9  *
10  112.64.252.86  324.28 ms  AS17621  中国 上海 联通
11  *
12  208.162.dsnet (211.144.208.162)  162.06 ms  AS23853  中国 上海 shuxun.net 电信/联通
13  208.134.dsnet (211.144.208.134)  160.57 ms  AS23853  中国 上海 shuxun.net 电信/联通
14  *
15  *
16  *
17  *
18  205.58.dsnet (211.144.205.58)  287.26 ms  AS17621,AS23853  中国 上海 shuxun.net 电信/联通

===== 回程 [上海电信] 路由测试结束 =====
===== 测试 [上海联通] 的回程路由 =====
traceroute to 220.196.42.133 (220.196.42.133), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.37 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.13  16.81 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.156)  0.41 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  chinaunicom-ic-324374-las-b24.c.telia.net (62.115.154.91)  314.46 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  219.158.96.25  289.92 ms  AS4837  中国 北京 联通
 6  219.158.3.137  327.08 ms  AS4837  中国 北京 联通
 7  219.158.5.149  314.17 ms  AS4837  中国 北京 联通
 8  219.158.16.90  296.00 ms  AS4837  中国 上海 联通
 9  *
10  139.226.203.6  308.53 ms  AS17621  中国 上海 联通
11  112.65.207.162  331.72 ms  AS17621  中国 上海 联通
12  140.207.207.165  339.75 ms  AS17621  中国 上海 联通
13  140.207.207.126  349.24 ms  AS17621  中国 上海 联通
14  220.196.42.133  303.40 ms  AS17621  中国 上海 联通

===== 回程 [上海联通] 路由测试结束 =====
===== 测试 [广东联通] 的回程路由 =====
traceroute to 27.40.0.30 (27.40.0.30), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.10 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.9  0.26 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.158)  27.72 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  chinaunicom-ic-151188-las-bb1.telia.net (213.248.94.126)  382.24 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  219.158.96.25  290.72 ms  AS4837  中国 北京 联通
 6  *
 7  219.158.18.69  319.49 ms  AS4837  中国 北京 联通
 8  219.158.112.46  371.24 ms  AS4837  中国 广东 广州 联通
 9  120.81.0.34  293.30 ms  AS17816  中国 广东 广州 联通
10  221.4.6.2  310.94 ms  AS17816  中国 广东 广州 联通
11  27.40.0.30  325.19 ms  AS17816  中国 广东 广州 联通

===== 回程 [广东联通] 路由测试结束 =====
===== 测试 [广东移动] 的回程路由 =====
traceroute to 211.139.129.222 (211.139.129.222), 30 hops max, 60 byte packets
 1  ear.la.hiformance.net (198.23.239.2)  0.12 ms  AS36352  美国 加利福尼亚州 洛杉矶 colocrossing.com
 2  10.9.3.13  2.57 ms  *  局域网
 3  las-b3-link.telia.net (62.115.146.156)  0.42 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 4  chinamobile-ic-327136-las-b24.c.telia.net (62.115.37.99)  96.56 ms  AS1299  美国 加利福尼亚州 洛杉矶 telia.com
 5  223.120.6.17  96.39 ms  AS58453  美国 加利福尼亚州 洛杉矶 移动
 6  *
 7  *
 8  *
 9  221.176.19.37  322.20 ms  AS9808  中国 广东 广州 移动
10  221.176.24.5  372.73 ms  AS9808  中国 广东 广州 移动
11  *
12  *
13  *
14  *
15  211.139.129.222  327.84 ms  AS56040  中国 广东 广州 移动

===== 回程 [广东移动] 路由测试结束 =====
----------------------------------------------------------------------
【四川电信】 - 125.64.38.178
10 packets transmitted, 6 received, 40% packet loss, time 9001ms
rtt min/avg/max/mdev = 297.731/297.816/297.870/0.548 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【北京电信】 - 106.120.243.142
10 packets transmitted, 10 received, 0% packet loss, time 8999ms
rtt min/avg/max/mdev = 202.605/229.378/247.753/17.592 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【北京联通】 - 103.254.70.52
10 packets transmitted, 10 received, 0% packet loss, time 9009ms
rtt min/avg/max/mdev = 234.315/251.105/265.916/13.239 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【北京移动】 - 218.205.152.14
10 packets transmitted, 4 received, 60% packet loss, time 9004ms
rtt min/avg/max/mdev = 347.991/348.252/348.489/0.177 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【上海移动】 - 117.131.14.202
10 packets transmitted, 5 received, 50% packet loss, time 9001ms
rtt min/avg/max/mdev = 344.769/345.570/347.109/0.827 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【上海电信】 - 211.144.205.58
10 packets transmitted, 6 received, 40% packet loss, time 9007ms
rtt min/avg/max/mdev = 284.695/289.510/296.363/5.161 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【上海联通】 - 220.196.42.133
10 packets transmitted, 9 received, 10% packet loss, time 9006ms
rtt min/avg/max/mdev = 287.089/299.335/308.720/6.880 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【广东联通】 - 27.40.0.30
10 packets transmitted, 10 received, 0% packet loss, time 9008ms
rtt min/avg/max/mdev = 320.965/331.647/340.094/7.365 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
【广东移动】 - 211.139.129.222
10 packets transmitted, 1 received, 90% packet loss, time 8999ms
rtt min/avg/max/mdev = 326.090/326.090/326.090/0.000 ms
----------------------------------------------------------------------
----------------------------------------------------------------------
min:最低延迟
avg:平均延迟
max:最高延迟
mdev:平均偏差
----------------------------------------------------------------------
----------------------------------------------------------------------

老鬼的博客脚本:

此脚本来自于oooldking大佬。网站地址:https://www.oldking.net
Shell中输入以下内容并按Enter键执行脚本即可。

wget -qO- git.io/superbench.sh | bash

此脚本默认测试主机配置信息、磁盘IO性能、多地的上传下载速度,如下所示。

wget -qO- git.io/superbench.sh | bash

 =========================================================
 \                 Superbench.sh  Script                 /
 \       Basic system info, I/O test and speedtest       /
 \                   v1.1.5 (14 Jun 2019)                /
 \                   Created by Oldking                  /
 =========================================================

 Intro: https://www.oldking.net/350.html
 Copyright (C) 2019 Oldking oooldking@gmail.com
 Happy New Year!

 Installing Speedtest-cli ...
 Installing tools.py ...
 Installing Fast.com-cli ...
----------------------------------------------------------------------
 Superbench.sh -- https://www.oldking.net/350.html
 Mode  : Standard    Version : 1.1.5
 Usage : wget -qO- git.io/superbench.sh | bash
----------------------------------------------------------------------
 CPU Model            : Virtual CPU 82d9ed4018dd
 CPU Cores            : 1 Cores @ 2593.904 MHz x86_64
 CPU Cache            : 16384 KB
 OS                   : CentOS 7.6.1810 (64 Bit) KVM
 Kernel               : 3.10.0-957.27.2.el7.x86_64
 Total Space          : 1.7 GB / 55.0 GB
 Total RAM            : 96 MB / 1838 MB (629 MB Buff)
 Total SWAP           : 0 MB / 0 MB
 Uptime               : 4 days 8 hour 19 min
 Load Average         : 0.00, 0.01, 0.05
 TCP CC               : cubic
 ASN & ISP            : AS20473, Choopa
 Organization         : Vultr Holdings, LLC
 Location             : Queenstown Estate, Singapore / SG
 Region               :
----------------------------------------------------------------------
 I/O Speed( 1.0GB )   : 344 MB/s
 I/O Speed( 1.0GB )   : 370 MB/s
 I/O Speed( 1.0GB )   : 494 MB/s
 Average I/O Speed    : 402.7 MB/s
----------------------------------------------------------------------
 Node Name        Upload Speed      Download Speed      Latency
 Speedtest.net    2149.18 Mbit/s    4895.81 Mbit/s      2.045 ms
 Fast.com         0.00 Mbit/s       138.9 Mbit/s        -
 Guangzhou CT     3.57 Mbit/s       13.11 Mbit/s        -
 Wuhan     CT     0.77 Mbit/s       1.31 Mbit/s         -
 Hangzhou  CT     1.28 Mbit/s       0.75 Mbit/s         -
 Lanzhou   CT     0.22 Mbit/s       1.17 Mbit/s         -
 Shanghai  CU     12.34 Mbit/s      17.57 Mbit/s        -
 Heifei    CU     15.54 Mbit/s      44.01 Mbit/s        -
 Chongqing CU     15.67 Mbit/s      16.70 Mbit/s        -
 Xizang    CM     2.08 Mbit/s       118.36 Mbit/s       -
----------------------------------------------------------------------

Shell还有以下使用方法:

wget git.io/superbench.sh; chmod +x superbench.sh

或者 curl -LsO git.io/superbench.sh; chmod +x superbench.sh

./superbench.sh info

./superbench.sh io

./superbench.sh speed

./superbench.sh share

SpeedTest 的Jinan Wo 节点测速:

以下脚本使用SpeedTest网站的Jinan Wo节点测速。

wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py

chmod +x speedtest.py

./speedtest.py --server 5563

RTL2838电视棒EEPROM分析-基于RTL2832U,PID为2838的SDR硬件

RTL2838电视棒EEPROM分析-基于RTL2832U,PID为2838的SDR硬件

前言:

前几天水群时看到有网友聊起要买RTL2832U电视棒,看起来很贵,记得自己买的电视棒很便宜。于是问了一下,然后有网友表示RTL28382U电视棒pid为2832,而便宜的那个是RTL2838且其pid为2838,某些软件不识别这种硬件。然后我翻出自己的试了一下,还真的被识别为RTL2838(pid2838)。难道为了兼容性,必须要多花很多钱?通过大家的努力,我们把RTL2838电视棒改成了RTL2832U电视棒。

正文:

我的电视棒之前曾经拆解过,里面IC丝印为RTL2832U,且不存在任何打磨重新雕刻的痕迹。当我发现计算机将电视棒名字识别为RTL2838UHIDIR而不是RTL2832U的时候,我第一感觉也怀疑到了IC,但是IC的外观并不像假货。又有网友提供了osmocom论坛)的相关WIKI,它有一句话:Many devices with EEPROM have 0x2838 as PID and RTL2838 as product name, but in fact all of them have an RTL2832U inside.Realtek never released a chip marked as RTL2838 so far.从此处我们了解到实际并没有RTL2828这款IC。

想到很多IC都会用外挂EEPROM的方式存储配置信息,我便再次想到,这款电视棒是否也是如此,而它的设备名称、PID&VID是否也如此?于是便将外壳再次拆下,果然在RTL2832U附近看到了一枚型号为24C02N的EEPROM。直接将24C02拆焊上编程器,将其数据dump到文件中。文件内容:

B1.jpg

我们发现在dump出的EEPROM数据中存在部分区域对应USB设备信息。很明显可以看到RTL2838UHIDIR这段文字的数据存在于0x1B~0x33地址区域,且字符间都相隔一个00。从计算机上给出的信息中得知,这段数据是这个设备的产品名称。我们还发现,0x0B~0x17地址区域中存储的内容为Realtek,与前面一样,字符间相隔一个00,这段便是这个设备的制造商。最终我们还发现,0x02~0x05这段中存储的数据就是USB设备的PID和VID,且是以倒序的方式存储的。其中0x050x04中存储的是PID,即2838;而0x030x02中存储的是VID,即0BDA。这些数据也是能和计算机读出的信息相匹配的。而其他地址中存储的数据具体含义与用途,我没有查到。如果有大佬知道,欢迎补充。

有了以上的信息,我们就可以着手尝试改变它了。上面提到,有网友表示:某些软件只支持PID为2832的设备。根据上文我们获取的信息,我们将EEPROM中的数据做如下修改,把他焊回到电视棒上,插入计算机,发现果然如预期,它变成了名为RTL2832U、PID为2832的电视棒。

B2.jpg

这还没有结束,我在搜索资料的时候,意外的发现了一个叫做rtl-sdr的实用程序包。这个工具可以运行在Linux系统下,它包含了一个叫做rtl_eeprom的工具,可以将连接到计算机的RTL电视棒的EEPROM数据dump到一个文件中,也可以将修改后的文件写回EEPROM。此工具通过shell操作,命令如下。

CentOS7下安装:

yum install -y rtl-sdr

将数据dump到文件中:

 rtl_eeprom -r <文件名>

将文件写入EEPROM中:

警告:此操作非常危险,写入错误的数据或写入失败损坏数据等意外将导致电视棒无法再次被计算机正常识别!

 rtl_eeprom -w <文件名>

有网帖表示若因写错EEPROM文件导致电视棒无法工作,可尝试用镊子等导电物体短路EEPROM的SDA和SCL引脚,使RTL2832U无法识别EEPROM而直接被识别为PID=2832,然后使用rtl_eeprom工具提供的-g选项直接生成默认文件。具体参考:rtl_eeprom一文,鄙人未对此方法的有效性做验证

有了上文的方案,没有烙铁或焊台等工具的CS大佬们便可以尝试不拆硬件修改EEPROM了。

此处附上本人RTL电视棒修改前后的EEPROM中dump到的文件:

EEPROM.zip

本文主要整理了鄙人发现EEPROM中部分数据对电视棒作用的过程,希望本文能对大家有所帮助。

参考:

1:RealTek RTL2832U
linuxtv.org/wiki/index.php/RealTek_RTL2832U

2:WIKI:rtl-sdr
https://osmocom.org/projects/rtl-sdr/wiki/Rtl-sdr

3:rtl-eeprom工具帮助文档
http://manpages.ubuntu.com/manpages/trusty/man1/rtl_eeprom.1.html

CentOS7下编译安装Shadowsocks-libev

CentOS7下编译安装Shadowsocks-libev

前言:

Shadowsocks是一种基于Socks5代理方式的加密传输协议,也可以指实现这个协议的各种开发包。在中国大陆,本工具广泛用于解决长城防火墙的未知错误而导致的Google、YouTube、Facebook等正常境外网站不能正常访问。网上有大量热心网友提供了各种版本的一键安装脚本,用于支持那些非计算机从业人员快速方便的在服务器上搭建服务端。但是某些情况下,一键脚本的安全性难以保证;另一方面,使用一键脚本不能让我们具体了解到这个工具是如何工作的。而本文则提供了一步一步从源代码手动编译安装Shadowsocks-libev的过程。

阅读本文,您可能需要基本的Linux系统操作技术与网络技术基础。

步骤:

  1. 准备编译环境,在CentOS7下运行以下两条命令完成环境准备。

    yum install epel-release -y
    yum install gcc gettext autoconf libtool automake make pcre-devel asciidoc xmlto c-ares-devel libev-devel libsodium-devel mbedtls-devel -y
  2. 安装Git,并从GitHub下载源码。

    yum install git -y
    cd /usr/local/src
    git clone https://github.com/shadowsocks/shadowsocks-libev.git
  3. 配置并编译源代码。

    cd shadowsocks-libev
    git submodule update --init --recursive
    sh autogen.sh
    ./configure --disable-documentation
    make
    make install
  4. 配置Shadowsocks服务端配置文件,文件位于 .../shadowsocks-libev/debian/config.json,将此文件复制到/etc/shadowsocks-libev/config.json

    mkdir /etc/shadowsocks-libev
    cp ./debian/config.json /etc/shadowsocks-libev/config.json
  5. 使用vi编辑器打开/etc/shadowsocks-libev/config.json

    vi /etc/shadowsocks-libev/config.json
  6. 按照自己的需求填写服务端参数。

    {
    "server":"0.0.0.0",    //服务端IP地址,Linux系统下0.0.0.0表示本地
    "server_port":8388,    //服务端端口号
    "local_port":1080,     //本地端口号
    "password":"barfoo!",   //密码
    "timeout":10,    超时时长(秒)
    "method":"chacha20-ietf-poly1305"     //加密方式
    }
    #加密方式据说有如下几种:
    aes-256-gcm
    aes-192-gcm
    aes-128-gcm
    aes-256-ctr
    aes-192-ctr
    aes-128-ctr
    aes-256-cfb
    aes-192-cfb
    aes-128-cfb
    camellia-128-cfb
    camellia-192-cfb
    camellia-256-cfb
    chacha20-ietf-poly1305
    chacha20-ietf
    chacha20
    rc4-md5
  7. shadowsocks-libev.default文件复制到/etc/sysconfig/shadowsocks-libev
    shadowsocks-libev.service文件复制到/usr/lib/systemd/system/目录。因为本例中编译安装的程序文件位置为/usr/local/bin/,需要修改一下文件中的启动命令。
cp /usr/local/src/shadowsocks-libev/rpm/SOURCES/systemd/shadowsocks-libev.default /etc/sysconfig/shadowsocks-libev
cp /usr/local/src/shadowsocks-libev/rpm/SOURCES/systemd/shadowsocks-libev.service /usr/lib/systemd/system/
vi /usr/lib/systemd/system/shadowsocks-libev.service

将以下一行:

ExecStart=/usr/bin/ss-server -c "$CONFFILE" $DAEMON_ARGS

替换成以下内容,按ESC键输入:wq,按Enter键保存退出即可。

ExecStart=/usr/local/bin/ss-server -c "$CONFFILE" $DAEMON_ARGS
  1. 运行服务,检查服务是否正常运行,若服务运行正常,即显示:Active: active (running)

    systemctl start shadowsocks-libev
    systemctl status shadowsocks-libev
  2. 确定服务正常后,将服务添加到开机启动。这时我们在客户端中输入服务器的IP地址等配置信息后就可以使用了,若依然不可以,请检查配置信息是否填写正确,并检查服务端防火墙配置。

    systemctl enable shadowsocks-libev

防火墙配置:

若服务端与客户端配置均正确,依然无法建立连接,我们便需要检查是否服务端防火墙导致。若服务器系统配置了防火墙并已经启动,那么在配置防火墙开放对应服务端口前,自然是无法与服务器建立连接的。其实我们作为服务器的管理人员,自然应该知道自己服务器是否有开启防火墙的。

  1. 我们可以使用此网站检查某个端口是否可以访问。输入IP地址和端口号后点击Check即可检测。若提示Port XX is open on x.x.x.x 即表示端口已经打开。反之 close即表示端口没有反应。此时我们进一步检查防火墙。
  2. 检查防火墙服务是否运行,CentOS7默认将原来CentOS6时代的防火墙iptables升级为了firewalld。使用以下命令检查防火墙运行状态。若回显信息提示:running,则表示防火墙运行中。

    firewall-cmd --state
  3. 为Shadowsocks在防火墙中添加规则,开放对应端口的TCP和UDP通信。下以上文配置文件中的8388端口为例,具体按自己需求修改。到此为止,我们便完成了防火墙的配置。

    firewall-cmd --zone=public --add-port={8388/tcp,8388/udp} --permanent
    firewall-cmd --reload

本文到此结束。

参考:

  1. shadowsocks-libev-GitHub项目页