w1100n
This site is best viewed in Google Chrome
wiloon, 1/21/2019 15:05

https://colobu.com/2017/06/21/json-tricks-in-Go/ type Result struct { Count int `json:”count”` } func main() { out := shellExec(shell) var result Result json.Unmarshal([]byte(out), &result) fmt.Println(result.Count) }

wiloon, 1/21/2019 14:53

func shellExec(s string) string { cmd := exec.Command(“/bin/sh”, “-c”, s) var out bytes.Buffer cmd.Stdout = &out err := cmd.Run() if err != nil { log.Fatal(err) } fmt.Printf(“%s”, out.String()) return out.String() }

wiloon, 1/19/2019 19:06

#安装 NFS 服务器 sudo apt install nfs-kernel-server vim /etc/exports # 添加如下内容以允许所有可以访问 NAS 云盘的设备挂载存储: /nas/data *(rw,sync,no_subtree_check) # restart nfs server systemctl restart nfs-kernel-server # 在另一台linux 上挂载 sudo mkdir /nas/data sudo mount -t nfs <raspberry-pi-hostname-or-ip>:/nas/data /nas/data autofs pacman -S autofs pacman -S … Continue reading

wiloon, 1/19/2019 19:04

setfacl命令可以用来细分linux下的文件权限。 chmod命令可以把文件权限分为u,g,o三个组,而setfacl可以对每一个文件或目录设置更精确的文件权限。 换句话说,setfacl可以更精确的控制权限的分配。 比如:让某一个用户对某一个文件具有某种权限。 这种独立于传统的u,g,o的rwx权限之外的具体权限设置叫ACL(Access Control List) ACL可以针对单一用户、单一文件或目录来进行r,w,x的权限控制,对于需要特殊权限的使用状况有一定帮助。 如,某一个文件,不让单一的某个用户访问。 setfacl 参数 Usage: setfacl [-bkndRLP] { -m|-M|-x|-X … } file … -m, –modify=acl modify the current ACL(s) of file(s) -M, –modify-file=file read ACL entries to modify from file -x, –remove=acl remove … Continue reading

wiloon, 1/8/2019 21:44

ss -ntl # tcp port ss -nul # udp port ss -nul4 # udp port -ipv4 ss -nul6 # udp port -ipv6 http://www.ttlsa.com/linux-command/ss-replace-netstat/ ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等统计. 它比其他工具展示等多tcp和state信息. 它是一个非常实用、快速、有效的跟踪IP连接和sockets的新工具.SS命令可以提供如下信息: 所有的TCP … Continue reading

wiloon, 1/7/2019 14:03

https://blog.csdn.net/hongkangwl/article/details/16184883 Linux提供$?特殊变量来保存最后一条命令执行结束的退出状态。执行完一条命令后,立即执行echo$?,可以查看最后一条命令的退出状态值。 正常的情况下,命令成功执行完成的退出状态是0,如果非0,则命令执行有错。 该命令可以用于检查命令是否正确执行,比如在解压包的时候,检查解压包是否成功十分有效。 自定义退出状态码,可以在脚本中定义自己的退出状态代码,然后使用echo $?检查。 退出状态码最高是255,一般自定义的代码值为0~255,如果超出255,则返回该数值被256除了之后的余数。 退出状态代码: 0 命令成功完成 1通常的未知错误 2误用shell命令 126命令无法执行 127没有找到命令 128无效的退出参数 128+x使用Linux信号x的致命错误。 130使用Ctrl-C终止的命令 255规范外的退出状态 ubuntu下测试结果如下 wl@wl-MS-7673:/home/python$ date 2013年 11月 14日 星期四 19:12:45 CST wl@wl-MS-7673:/home/python$ echo $? 0 wl@wl-MS-7673:/home/python$ kkllk kkllk: command not found wl@wl-MS-7673:/home/python$ echo $? … Continue reading

wiloon, 1/6/2019 18:56

Keytool 是一个Java 数据证书的管理工具 ,Keytool 将密钥(key)和证书(certificates)存在一个称为keystore的文件中 在keystore里,包含两种数据: 密钥实体(Key entity)——密钥(secret key)又或者是私钥和配对公钥(采用非对称加密) 可信任的证书实体(trusted certificate entries)——只包含公钥 ailas(别名)每个keystore都关联这一个独一无二的alias,这个alias通常不区分大小写 JDK中keytool 常用命令: param comments -genkey 在用户主目录中创建一个默认文件”.keystore”,还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书 -alias 产生别名 -keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中) -keysize 指定密钥长度 -validity 指定创建的证书有效期多少天 -keyalg 指定密钥的算法 (如 RSA DSA(如果不指定默认采用DSA)) -dname 指定证书拥有者信息 例如: “CN=名字与姓氏,OU=组织单位名称,O=组织名称,L=城市或区域名称,ST=州或省份名称,C=单位的两字母国家代码” -keypass 指定别名条目的密码(私钥的密码) -storepass 指定密钥库的密码(获取keystore信息所需的密码) … Continue reading

wiloon, 1/6/2019 18:06

https://www.jianshu.com/p/7158568e4867 Client Hello 握手第一步是客户端向服务端发送 Client Hello 消息,这个消息里包含了一个客户端生成的随机数 Random1、客户端支持的加密套件(Support Ciphers)和 SSL Version 等信息。通过 Wireshark 抓包,我们可以看到如下信息: Wireshark 抓包的用法可以参考这篇文章 Server Hello 第二步是服务端向客户端发送 Server Hello 消息,这个消息会从 Client Hello 传过来的 Support Ciphers 里确定一份加密套件,这个套件决定了后续加密和生成摘要时具体使用哪些算法,另外还会生成一份随机数 Random2。注意,至此客户端和服务端都拥有了两个随机数(Random1+ Random2),这两个随机数会在后续生成对称秘钥时用到。 Certificate 这一步是服务端将自己的证书下发给客户端,让客户端验证自己的身份,客户端验证通过后取出证书中的公钥。 Server Key Exchange 如果是DH算法,这里发送服务器使用的DH参数。RSA算法不需要这一步。 Certificate Request Certificate Request … Continue reading

wiloon, 1/6/2019 17:52

https://www.jianshu.com/p/ffe8c203a471 摘要算法 除了加密算法,摘要算法在互联网安全体系中也扮演了重要的角色。摘要算法有以下特性: 只要源文本不同,计算得到的结果,必然不同(或者说机会很少)。 无法从结果反推出源数据。 基于以上特性,我们一般使用摘要算法来校验原始内容是否被篡改。常见的摘要算法有 MD5、SHA 等。 Tips: 摘要算法不能算作加密算法,加密算法需要使用秘钥加解密,但摘要算法无法根据结果反推出内容。另外 MD5 目前也不算安全了,例如彩虹表攻击。 数字证书 数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。 数字证书里一般会包含公钥、公钥拥有者名称、CA 的数字签名、有效期、授权中心名称、证书序列号等信息。 数字证书如何确保列出的用户就是公钥的拥有者呢?关键点是 CA 的数字签名,CA会用自己的私钥将证书内容的摘要进行加密。因为 CA 的公钥是公开的,任何人都可以用公钥解密出 CA 的数字签名的摘要,再用同样的摘要算法提取出证书的摘要和解密 CA 数字签名后的摘要比对,一致则说明这个证书没有被篡改过,可以信任。 http://blog.wiloon.com/?p=3655 PKI PKI(Public Key Infrastructure)翻译过来就是公钥基础设施,可以理解为利用公钥技术为网络应用提供加密和数字签名等密码服务以及必需的密钥和证书管理体系。它是一个提供安全服务的基础设施,PKI 技术是信息安全技术的核心,同时也是电子商务的关键和基础技术。 PKI 既不是一个协议,也不是一个软件,它是一个标准,在这个标准之下发展出的为了实现安全基础服务目的的技术统称为 PKI。 PKI是一个标准,它包括一些基本的组件,不同的组件提供不同的服务,主要由一下几个组件组成: 认证中心 CA(证书签发):CA 机构,又称为证书授证 (Certificate Authority) … Continue reading

wiloon, 1/5/2019 12:39

https://colobu.com/2016/06/07/simple-golang-tls-examples/ 生成TLS证书 http://blog.wiloon.com/?p=12962 server package main import ( “bufio” “crypto/tls” “log” “net” ) func main() { cert, err := tls.LoadX509KeyPair(“certs/server.pem”, “certs/server.key”) if err != nil { log.Println(err) return } config := &tls.Config{Certificates: []tls.Certificate{cert}} address := “:8443” log.Println(“listening: “, address) ln, … Continue reading

wiloon, 1/4/2019 18:06

https://docs.oracle.com/cd/E35976_01/server.740/es_admin/src/tadm_ssl_convert_pem_to_jks.html

wiloon, 1/3/2019 21:01

newifi 3 处理器MT7621A 32M的ROM 512M的RAM 1个USB3.0接口 双频无线 一个千兆WAN口、 4个千兆LAN口 https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=341067&highlight=newifi%2Bd2%2Bopenwrt https://github.com/coolsnowwolf/lede https://downloads.openwrt.org/releases/18.06.1/targets/ramips/mt7621/

wiloon, 1/3/2019 13:39

https://askubuntu.com/questions/783184/how-to-display-kde-lock-screen-time-in-24-hour-format

wiloon, 1/3/2019 0:10

https://www.right.com.cn/forum/thread-342918-1-1.html 开启固件 SSH a) 开启路由器,进入管理界面 (假设路由器 IP 地址是 192.168.99.1) b) 在浏览器中输入 http://192.168.99.1/newifi/ifiwen_hss.html 并进入 c) 页面显示 success 即表明已开启 SSH 进入路由器 SSH 环境 a) 略。使用 PuTTY/SecureCRT/ssh 均可 上传解锁文件到路由器 a) 下载附件,解压得到 newifi-d2-jail-break.ko b) 用 WinSCP 等工具将其上传到路由器的 /tmp 目录 c) 或者用 HFS 搭建本地 HTTP … Continue reading

wiloon, 1/1/2019 12:16

#启动时创建tap0 sudo vim /etc/systemd/network/90-tap0.netdev [NetDev] Description=description0 Name=tap0 Kind=tap sudo vim /etc/systemd/network/tap.network [Match] Name=tap0 [Link] MACAddress=5a:70:70:48:7f:50 # 手动创建tap0 sudo ip tuntap add dev tap0 mode tap # set ip sudo ip addr add 192.168.60.1/24 dev tap0 # tap up sudo ip … Continue reading

wiloon, 1/1/2019 11:05

http://lxiaogao.lofter.com/post/1cc6a101_62292d3 systemd 添加开机启动运行shell脚本 1.首先在/etc/systemd/systemd/下新建一个开机启动服务名为cs.service 格式如下 [Unit] Description=test shell ——————->开机启动会打印【ok】 started test shell [Service] ExecStart=/bin/sh /home/root/cs.sh ——————->你要开机运行的脚本必须绝对位置 /bin/sh 为shell解释器不能省 [Install] WantedBy=multi-user.target Requires=pulseaudio.service ————————>你要安排在哪个服务后面才启动(如依赖的服务) After=pulseaudio.service ————————->你要安排在哪个服务后面才启动(如依赖的服务) 2.写好之后 敲入 #systemctl enable cs.service 将它添加到开机启动 注 脚本里的命令也必须是写绝对路径!!!!!!!!!!!!!!!

wiloon, 12/31/2018 12:45

Raspberry Pi 3 Specifications SoC: Broadcom BCM2837 CPU: 4× ARM Cortex-A53, 1.2GHz GPU: Broadcom VideoCore IV — arm 32bit RAM: 1GB LPDDR2 (900 MHz) Networking: 10/100 Ethernet, 2.4GHz 802.11n wireless Bluetooth: Bluetooth 4.1 Classic, Bluetooth Low Energy Storage: microSD GPIO: … Continue reading

wiloon, 12/30/2018 17:59

vim /etc/systemd/resolved.conf #switch off binding to port 53 DNSStubListener=no #disable LLMNR LLMNR=false

wiloon, 12/30/2018 17:54

https://www.jianshu.com/p/bfcc437a738e 什么是LLMNR 在DNS 服务器不可用时,DNS 客户端计算机可以使用本地链路多播名称解析 (LLMNR—Link-Local Multicast Name Resolution)(也称为多播 DNS 或 mDNS)来解析本地网段上的名称。例如,如果路由器出现故障,从网络上的所有 DNS 服务器切断了子网,则支持 LLMNR 的子网上的客户端可以继续在对等基础上解析名称,直到网络连接还原为止。 LLMNR(本地链路组播名称解析)在DNS服务器不可用时,DNS 客户端计算机可以使用本地链路组播名称解析,通过UDP发送到组播地址224.0.0.252:5355,来解析本地网段上的名称,使用的也是普通DNS的数据包格式。类似的另一种协议是mDNS(组播DNS),通过UDP协议发送到组播地址224.0.0.251:5353,用于家庭局域网等小型网络。 LLMNR为使用IPv4、IPv6或者同时使用这两种地址的设备提供了点对点名称解析服务,可以让同一子网中的IPv4和IPv6设备不需要WINS或DNS服务器就可以解析对方的名称。 例如,如果路由器出现故障,从网络上的所有 DNS 服务器切断了子网,则支持 LLMNR 的子网上的客户端可以继续在对等基础上解析名称,直到网络连接还原为止。除了在网络出现故障的情况下提供名称解析以外,LLMNR 在建立临时对等网络方面也非常有用。 除了在网络出现故障的情况下提供名称解析以外,LLMNR 在建立临时对等网络(例如,机场候机区域)方面也非常有用。 LLMNRs 工作过程 主机在自己的内部名称缓存中查询名称。如果在缓存中没有找到了名称,那么主机就会向自己配置的主DNS服务器发送查询请求。如果主机没有收到回应或收到了错误信息,主机还会尝试搜索配置的备用DNS服务器。如果主机没有配置DNS服务器,或者如果在连接DNS服务器的时候没有遇到错误但失败了,那么名称解析会失败,并转为使用LLMNR。 主机通过用户数据报协议(UDP)发送多播查询,查询主机名对应的IP地址,这个查询会被限制在本地子网(也就是所谓的链路局部)内。 链路局部范围内每台支持LLMNR,并且被配置为响应传入查询的主机在收到这个查询请求后,会将被查询的名称和自己的主机名进行比较。如果没有找到匹配的主机名,那么计算机就会丢弃这个查询。如果找到了匹配的主机名,这台计算机会传输一条包含了自己IP地址的单播信息给请求该查询的主机。

wiloon, 12/29/2018 16:16

curl –include \ –no-buffer \ –header “Connection: Upgrade” \ –header “Upgrade: websocket” \ –header “Host: example.com:80” \ –header “Origin: http://example.com:80” \ –header “Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==” \ –header “Sec-WebSocket-Version: 13” \ http://example.com:80/ 作者:sd2131512 来源:CSDN 原文:https://blog.csdn.net/sd2131512/article/details/74996577 版权声明:本文为博主原创文章,转载请附上博文链接!

next page
辽ICP备14012896