/etc/passwd, /etc/shadow

/etc/passwd, /etc/shadow https://blog.csdn.net/u012501054/article/details/71522278 Linux系统中,所有用户 (包括系统管理员) 的账号和密码都可以在/etc/passwd和/etc/shadow这两个文件中找到, (用户和密码就放在文件中,不怕被其他人看的或者修改吗?/etc/passwd只有系统管理员才可以修改的,其他用户可以查看,/etc/shadow其他用户看不了) vim /etc/shadow ls -al /etc/passwd /etc/shadow -rw-r-r-. 1 root root 2250 12月 14 00:17 /etc/passwd —-. 1 root root 1263 12月 14 00:17 /etc/shadow 上面分别列出了passwd和shadow文件的访问权限信息,其中passwd保存的是账号,shadow保存的是账号的密码等信息,下面就具体看看这两个文件的内容: /etc/passwd 通过指令 vi /etc/passwd 打开passwd文件来看看,下面列举部分内容如下: root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh 上面每一行都代表一个用户,每一行又通过[:]分为七个部分。 账号名称 原先用来保存密码的,现在密码都放在/etc/shadow中,所以这里显示x UID,也就是使用者ID。默认的系统管理员的UID为0,我们添加用户的时候最好使用1000以上的UID,1-1000范围的UID最好保留给系统用。 GID,也就是群组ID 关于账号的一些说明信息 (暂时可以忽略) 账号的家目录,家目录就是你登陆系统后默认的那个目录 账号使用的shell vi /etc/shadow root:!:15324:0:99999:7::: daemon:_:15259:0:99999:7::: bin:_:15259:0:99999:7::: letuknowit:$1$cPf/cIvr$sCws95uSip2ljTK052DDB.:15400:5:60:7:2:15490: 这里也是由[:]来进行分割,但是这里一共分出来九个栏目,每个栏目的解释如下: 账户名称 (密码需要与账户对应的嘛) 加密后的密码, 假如此字段为空,则表示该账号不需要密码就可以登录。如果密码栏的第一个字符为’*‘或者是’!’,表示这个账号不能用来登录。可以使用这个方法来开启或关闭一个账户的登录权限。另外’!!‘两个叹号表示这个账号目前没有密码,也不能用于登录,通常为一些系统账号。 最近改动密码的日期 (不是日期吗,咋是一堆数字,别急,这个是从1970年1月1日算起的总的天数) 。那怎么才能知道今天距1970年1月1日有多少天呢?很简单,你改下密码,然后看下这个栏目中的数字是多少就可以了! 密码不可被变更的天数: 设置了这个值,则表示从变更密码的日期算起,多少天内无法再次修改密码,如果是0的话,则没有限制 密码需要重新变更的天数: 密码经常更换才能保证安全,为了提醒某些经常不更换密码的用户,可以设置一个天数,强制让用户更换密码,也就是说该用户的密码会在多少天后过期,如果为99999则没有限制 密码过期预警天数: 如果在5中设置了密码需要重新变更的天数,则会在密码过期的前多少天进行提醒,提示用户其密码将在多少天后过期 密码过期的宽恕时间: 如果在5中设置的日期过后,用户仍然没有修改密码,则该用户还可以继续使用的天数 账号失效日期,过了这个日期账号就不能用了 保留的 以上面最后用户letuknowit为例 (15400对应的日期为2012年3月1日) ,其保护如下信息: ...

2018-12-24 · 1 min · 84 words · -

Console(控制台), Terminal(终端), tty, shell

Console(控制台), Terminal(终端), tty, shell https://blog.csdn.net/on_1y/article/details/20203963 使用 linux 已经有一段时间, 却一直弄不明白这几个概念之间的区别。虽然一直在用, 但是很多概念都感觉模糊不清, 这样不上不下的状态实在令人不爽。下面就澄清一下这些概念。 这些概念本身有着非常浓厚的历史气息, 随着时代的发展, 他们的含义也在发生改变, 它们有些已经失去了最初的含义, 但是它们的名字却被保留了下来。 控制台(Console) 控制台(Console)是物理设备,用于输入输出,它直接连接在计算机上,是计算机系统的一部分。计算机输出的信息会显示在控制台上,例如BIOS的输出,内核的输出。 终端(Terminal) 终端(Terminal)也是一台物理设备,只用于输入输出,本身没有强大的计算能力。一台计算机只有一个控制台,在计算资源紧张的时代,人们想共享一台计算机,可以通过终端连接到计算机上,将指令输入终端,终端传送给计算机,计算机完成指令后,将输出传送给终端,终端将结果显示给用户。 虚拟控制台(Virtual Console),虚拟终端(Virtual Terminal) 虚拟控制台(Virtual Console)和虚拟终端是一样的。我们只有一台终端 (物理设备) ,这是我们与计算机之间的用户接口。假如有一天,我们想拥有多个用户接口,那么,一方面我们可以增加终端数目 (物理设备) ,另一方面,还可以在同一台终端 (物理设备) 上虚拟出多个终端,它们之间互相不影响,至少看起来互相不影响。这些终端就是虚拟终端。 在Ubuntu中,我们按下Ctrl+Alt+Fx时,会进入第x个虚拟终端,一共有七个虚拟终端,其中第七个虚拟终端,就是我们默认使用的图形用户界面。 终端模拟器(Terminal Emulator) 我们知道,终端是一种物理设备,而终端模拟器(Terminal Emulator),是一个程序,这些程序用来模拟物理终端。图形用户界面中的终端模拟器一般称为终端窗口(Terminal Window),我们在Ubuntu下打开的gnome-terminal就属于此类。 tty tty 的全称是 TeleTYpewriter, 这就是早期的终端 (物理设备), 它们用于向计算机发送数据, 并将计算机的返回结果打印出来。显示器出现后, 终端不再将结果打印出来,而是显示在显示器上。但是tty的名字还是保留了下来。 在Ubuntu中,我们按下Ctrl+Alt+F1时,会进入第1个虚拟终端,你可以看到屏幕上方显示的tty1。 shell shell 和之前说的几个概念截然不同, 之前的几个概念都是与计算机的输入输出相关的, 而 shell 是和内核相关的。内核为上层的应用提供了很多服务, shell 在内核的上层, 在应用程序的下层。例如,你写了一个 hello world 程序,你并不用显式地创建一个进程来运行你的程序,你把写好的程序交给shell就行了,由shell负责为你的程序创建进程。 我们在终端模拟器中输入命令时, 终端模拟器本身并不解释执行这些命令, 它只负责输入输出, 真正解释执行这些命令的, 是 shell。 我们平时使用的sh, bash, csh 是 shell 的不同实现。 ...

2018-12-24 · 2 min · 256 words · -

raspberry pi 3B disable ipv6

‘raspberry pi 3B disable ipv6’ Add ipv6.disable=1 to /boot/cmdline.txt cat /etc/modprobe.d/ipv6.conf Don’t load ipv6 by default alias net-pf-10 off uncommented alias ipv6 off added options ipv6 disable_ipv6=1 this is needed for not loading ipv6 driver blacklist ipv6 https://www.raspberrypi.org/forums/viewtopic.php?t=138899

2018-12-23 · 1 min · 38 words · -

Containerfile

Containerfile, Dockerfile buildkit 默认会查找当前目录的 Containerfile 或者 Dockerfile FROM golang:1.22.0 AS build ENV GO111MODULE on ARG APP_NAME=rssx-api WORKDIR /workdir COPY . . RUN CGO_ENABLED=0 GOOS=linux GOPROXY=https://goproxy.io go build -a -o ${APP_NAME} main.go FROM alpine:3.19.1 AS prod ARG APP_NAME=rssx-api COPY --from=build /workdir/${APP_NAME} /data/${APP_NAME} COPY config.toml config.toml COPY config.toml /data/config.toml ENV APPLICATION_NAME ${APP_NAME} CMD "/usr/local/bin/${APPLICATION_NAME}" FROM golang:1.12.4 AS build ENV GO111MODULE on WORKDIR /go/src/xxx.com/xxx ADD . . ADD cmd cmd ADD internal internal ADD pkg pkg RUN CGO_ENABLED=0 GOOS=linux go build -a cmd/xxx.go FROM alpine AS prod COPY --from=build /go/src/xxx.com/xxx/xxx . # dev ADD configs/xxx.json . CMD ["./xxx"] buildah -f Dockerfile-0 --build-arg foo="bar" 环境变量 设置环境变量 USERNAME 默认值为 admin,后面可以通过docker run -e USERNAME=“XXXXXX"修改,这个环境变量在容器里也可以$USERNAME获取 ...

2018-12-22 · 3 min · 588 words · -

Vim 查找, 替换

Vim 查找, 搜索, find 查找 在 normal 模式下按下 / 即可进入查找模式 (向下查找, ? 向上查找), 输入要查找的字符串并按下回车。 Vim 会跳转到第一个匹配。 按下 n 查找下一个, 按下 N 查找上一个。 换行符 \n https://blog.kuretru.com/posts/67976692/ /foo.*\n.*bar 大小写敏感 \c, \C # 大小写不敏感 /foo\c # 大小写敏感 /foo\C 大小写敏感配置 Vim 默认采用大小写敏感的查找, 为了方便我们常常将其配置为大小写不敏感 “设置默认进行大小写不敏感查找 set ignorecase “如果有一个大写字母, 则切换到大小写敏感查找 set smartcase vim 正则表达式 Vim 查找支持正则表达式, 例如 /vim$ 匹配行尾的 “vim”。 需要查找特殊字符需要转义,例如 /vim$ 匹配 “vim$"。 注意查找回车应当用\n,而替换为回车应当用\r (相当于<CR>) 。 将会查找所有的"foo”,“FOO”,“Foo"等字符串。 将上述设置粘贴到你的~/.vimrc,重新打开Vim即可生效。 查找当前单词 在normal模式下按下*即可查找光标所在单词 (word) , 要求每次出现的前后为空白字符或标点符号。例如当前为foo, 可以匹配foo bar中的foo,但不可匹配foobar中的foo。 这在查找函数名、变量名时非常有用。 ...

2018-12-19 · 2 min · 394 words · -

xss, AntiSamy

xss, AntiSamy https://blog.csdn.net/zhujq_icode/article/details/79154063 https://www.owasp.org/index.php/Category:OWASP_AntiSamy_Project https://github.com/GDSSecurity/AntiXSS-for-Java AntiSamy 策略文件 antisamy-tinymce.xml,这种策略只允许传送纯文本到后台 (这样做真的好吗?个人觉得这个规则太过严格) ,并且对请求头和请求参数都做了XSS转码。请注意这里,我们相对于参考链接中源码不同的处理方式在于: 我们对请求头也进行了编码处理。 antisamy-slashdot.xml Slashdot (http://www.slashdot.org/)是一个提供技术新闻的网站,它允许用户用有限的HTML格式的内容匿名回帖。 Slashdot不仅仅是目前同类中最酷的网站之一,而且同时也曾是最容易被成功攻击的网站之一。更不幸的是,导致大部分用户遭受攻击的原由是臭名昭着的goatse.cx 图片(请你不要刻意去看)。 Slashdot的安全策略非常严格: 用户只能提交下列的html标签: , <u>, <i>, , 并且还不支持CSS. 因此我们创建了这样的策略文件来实现类似的功能。它允许所有文本格式的标签来直接修饰字体、颜色或者强调作用。 antisamy-ebay.xml 众所周知,eBay (http://www.ebay.com/)是当下最流行的在线拍卖网站之一。它是一个面向公众的站点,因此它允许任何人发布一系列富HTML的内容。 我们对eBay成为一些复杂XSS攻击的目标,并对攻击者充满吸引力丝毫不感到奇怪。由于eBay允许输入的内容列表包含了比Slashdot更多的富文本内容,所以它的受攻击面也要大得多。下面的标签看起来是eBay允许的 (eBay没有公开标签的验证规则) :,… antisamy-myspace.xml MySpace (http://www.myspace.com/)是最流行的一个社交网站之一。用户允许提交几乎所有的他们想用的HTML和CSS,只要不包含JavaScript。 MySpace现在用一个黑名单来验证用户输入的HTML,这就是为什么它曾受到Samy蠕虫攻击(http://namb.la/)的原因。Samy蠕虫攻击利用了一个本应该列入黑名单的单词(eval)来进行组合碎片攻击的,其实这也是AntiSamy立项的原因。 antisamy-anythinggoes.xml 我也很难说出一个用这个策略文件的用例。如果你想允许所有有效的HTML和CSS元素输入 (但能拒绝JavaScript或跟CSS相关的网络钓鱼攻击) ,你可以使用这个策略文件。其实即使MySpace也没有这么疯狂。然而,它确实提供了一个很好的参考,因为它包含了对于每个元素的基本规则,所以你在裁剪其它策略文件的时候可以把它作为一个知识库。 作者: 系统信息 来源: CSDN 原文: https://blog.csdn.net/softwave/article/details/53761796 版权声明: 本文为博主原创文章,转载请附上博文链接 https://www.cnblogs.com/Kidezyq/p/9862547.html

2018-12-17 · 1 min · 47 words · -

linux 按关键字杀进程

linux 按关键字杀进程 kill -9 $(ps -ef | grep process0 | grep -v grep | awk '{print $2}')

2018-12-17 · 1 min · 17 words · -

archlinux vim 剪贴板

archlinux vim 剪贴板 sudo pacman -S gvim #复制到系统粘贴板 "+y #从系统粘贴板粘贴 "+p https://blog.csdn.net/dadoneo/article/details/6003415 用vim这么久 了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用vim打开编辑,真的不爽;上次论坛上有人问到了怎么在vim中使用系统粘贴板,印象里回复很多,有好几页的回复却没有解决问题,今天实在受不了了又在网上找办法,竟意外地找到 了,贴出来分享一下。 如果只是想使用系统粘贴板的话直接在输入模式按 Shift+Inset 就可以了,下面讲一下 vim 的粘贴板的基础知识,有兴趣的可以看看,应该会有所收获的。 vim帮助文档里与粘贴板有关的内容如下 vim(我这是GVIM)有17个粘贴板,分别是"、 0、1、2、…、9、-、_、+、. 、 : 、/:: ;用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到" (双引号)粘贴板里,同样用p粘贴的也是这个粘贴板里的内容; 要将vim的内容复制到某个粘贴板, 需要退出编辑模式, 进入正常模式后, 选择要复制的内容, 然后按"Ny完成复制, 其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y),例如要把内容复制到粘贴板a,选中内容后按"ay就可以了,有两点需要说明一下: VIM内部 (") : “号粘贴板 (临时粘贴板) 比较特殊,直接按y就复制到这个粘贴板中了,直接按p就粘贴这个粘贴板中的内容 (也可以说是VIM专用吧) ; 与外部程序交互(_/+): +号粘贴板是系统粘贴板,用”+y将内容复制到该粘贴板后可以使用Ctrl+V将其粘贴到其他文档 (如firefox、gedit) 中,同理,要把在其他地方用Ctrl+C或右键复制的内容复制到vim中,需要在正常模式下按"+p; 要将vim某个粘贴板里的内容粘贴进来,需要退出编辑模式,在正常模式按"Np,其中N为粘贴板号,如上所述,可以按"5p将5号粘贴板里的内容粘贴进来,也可以按"+p("+* 也行)将系统全局粘贴板里的内容粘贴进来。 我用的是GVIM,可能与某些帖子说的不一样,但大体操作还是一样的。好了,现在可以完美运用VIM复制粘贴了,再也不用慢腾腾地点鼠标了。 The vim package is built without Xorg support; specifically the +clipboard feature is missing, so Vim will not be able to operate with the primary and clipboard selection buffers. The gvim package provides also the CLI version of Vim with the +clipboard feature.

2018-12-16 · 1 min · 92 words · -

web应用防火墙(WAF)

web应用防火墙(WAF) Web应用防火墙是集web防护、网页保护、负载均衡、应用交付于一体的web整体安全防护设备的一款产品 。 Web防火墙产品部署在Web服务器的前面,串行接入,不仅在硬件性能上要求高,而且不能影响Web服务,所以HA功能、Bypass功能都是必须的,而且还要与负载均衡、Web Cache等Web服务器前的常见的产品协调部署。­ Web应用防火墙主要是对Web特有入侵方式的加强防护,如DDoS防御、SQL注入、XML注入、XSS等。 https://zhuanlan.zhihu.com/p/32465541

2018-12-14 · 1 min · 7 words · -

antisamy

antisamy https://blog.csdn.net/zhujq_icode/article/details/79154063 策略文件 antisamy-slashdot.xml Slashdot (http://www.slashdot.org/)是一个提供技术新闻的网站,它允许用户用有限的HTML是一个提供技术新闻的网站,它允许用户用有限的HTML)格式的内容匿名回帖。 Slashdot不仅仅是目前同类中最酷的网站之一,而且同时也曾是最容易被成功攻击的网站之一。更不幸的是,导致大部分用户遭受攻击的原由是臭名昭着的goatse.cx 图片(请你不要刻意去看)。 Slashdot的安全策略非常严格: 用户只能提交下列的html标签: **, , _, , < blockquote>,并且还不支持CSS.因此我们创建了这样的策略文件来实现类似的功能。它允许所有文本格式的标签来直接修饰字体、颜色或者强调作用。 antisamy-ebay.xml 众所周知,eBay (http://www.ebay.com/)是当下最流行的在线拍卖网站之一。它是一个面向公众的站点,因此它允许任何人发布一系列富HTML的内容。我们对eBay成为一些复杂XSS攻击的目标,并对攻击者充满吸引力丝毫不感到奇怪。由于eBay允许输入的内容列表包含了比Slashdot是当下最流行的在线拍卖网站之一。它是一个面向公众的站点,因此它允许任何人发布一系列富HTML的内容。我们对eBay成为一些复杂XSS攻击的目标,并对攻击者充满吸引力丝毫不感到奇怪。由于eBay允许输入的内容列表包含了比Slashdot)更多的富文本内容,所以它的受攻击面也要大得多。 antisamy-myspace.xml MySpace (http://www.myspace.com/)是最流行的一个社交网站之一。用户允许提交几乎所有的他们想用的HTML和CSS,只要不包含JavaScript。MySpace现在用一个黑名单来验证用户输入的HTML,这就是为什么它曾受到Samy蠕虫攻击(http://namb.la/)的原因。Samy蠕虫攻击利用了一个本应该列入黑名单的单词(eval)来进行组合碎片攻击的,其实这也是AntiSamy是最流行的一个社交网站之一。用户允许提交几乎所有的他们想用的HTML和CSS,只要不包含JavaScript。MySpace现在用一个黑名单来验证用户输入的HTML,这就是为什么它曾受到Samy蠕虫攻击(http://namb.la/)的原因。Samy蠕虫攻击利用了一个本应该列入黑名单的单词(eval)来进行组合碎片攻击的,其实这也是AntiSamy)立项的原因。 antisamy-anythinggoes.xml 如果你想允许所有有效的HTML和CSS元素输入 (但能拒绝JavaScript或跟CSS相关的网络钓鱼攻击) ,你可以使用这个策略文件。其实即使MySpace也没有这么疯狂。然而,它确实提供了一个很好的参考,因为它包含了对于每个元素的基本规则,所以你在裁剪其它策略文件的时候可以把它作为一个知识库。 antisamy-tinymce.xml 只允许文本格式通过,相对较安全 antisamy.xml 默认规则,允许大部分HTML通过 作者: flying_pig1989 来源: CSDN 原文: https://blog.csdn.net/zhujq_icode/article/details/79154063 版权声明: 本文为博主原创文章,转载请附上博文链接!

2018-12-14 · 1 min · 38 words · -

XSS, Cross Site Scripting, CSRF, Cross-site request forgery, CORS

CORS, XSS, Cross Site Scripting, CSRF, Cross-site request forgery CORS, Cross-Origin Resource Sharing, 跨源资源共享, 跨域资源共享 CORS (Cross-Origin Resource Sharing,跨源资源共享) 是一种基于 HTTP 头的机制,允许服务器指示浏览器应该允许哪些源(域、协议或端口)来访问其资源。 核心概念 同源策略 (Same-Origin Policy) 同源策略是浏览器最核心的安全机制之一,用于隔离潜在的恶意文档,防止不同源的网页之间互相干扰。 默认情况下, 网页只能请求与自身同源的资源。 什么是"同源": 两个 URL 只有在以下三个部分完全相同时才被认为是同源的: 协议 (Protocol): http/https 域名 (Domain): 包括子域名 端口 (Port): 默认端口可省略 假设当前页面是: http://www.example.com:80/dir/page.html http://www.example.com/dir2/other.html ✅ 同源 协议、域名、端口相同 http://www.example.com:80/dir/inner/page.html ✅ 同源 80 是 http 默认端口 https://www.example.com/page.html ❌ 不同源 协议不同 (https vs http) http://www.example.com:8080/page.html ❌ 不同源 端口不同 (8080 vs 80) http://api.example.com/page.html ❌ 不同源 域名不同 (子域名不同) http://example.com/page.html ❌ 不同源 域名不同 (缺少 www) ...

2018-12-13 · 3 min · 474 words · -

nuc

nuc 英特尔 「NUC」 (Next Unit of Computing) nuc5i5ryh CPU: Intel® Core™ i5-5250U Processor (3M Cache, up to 2.70 GHz) 内存: DDR3L-1333/1600 1.35V SO-DIMM nuc7i5bnk Intel® Core™ i5-7260U Processor (4M Cache, up to 3.40 GHz) nuc8i5bek Intel® Core™ i5-8259U Processor (6M Cache, up to 3.80 GHz)

2018-12-11 · 1 min · 45 words · -

archlinux UEFI

archlinux UEFI # boot with iso-usb ls /sys/firmware/efi dmesg |grep sdx lsblk gdisk /dev/sdx o y n EF00 n w y /dev/sdx1 512M EFI /dev/sdx2 xxxxM ext4 mkfs.vfat /dev/sdx1 mkfs.ext4 /dev/sdx2 mount /dev/sdx2 /mnt mkdir /mnt/boot mount/dev/sdx1 /mnt/boot pacstrap /mnt arch-chroot /mnt bootctl install cd /boot/loader pacman -S vim vim loader.conf default arch timeout 4 cd entries vim arch.conf title Archlinux linux /vmlinuz-linux initrd /initramfs-linux.img options root=PARTUUID=xxx rw r !blkid reboot

2018-12-08 · 1 min · 71 words · -

docker install

docker install ubuntu # apt 从仓库里安装, 落后两个小版本, 也算比较新了, 建议从官方源安装 sudo apt install docker.io curl, 配置官方源, 一般会高几个小版本 https://docs.docker.com/engine/install/ubuntu/ # 删掉旧版本的包, 有冲突的包 for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done # Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin sudo docker run hello-world https://docs.docker.com/install/linux/docker-ce/centos/ ...

2018-11-28 · 1 min · 194 words · -

raspberry pi openvpn docker

raspberry pi openvpn docker export OVPN_DATA="ovpn-data" docker volume create --name $OVPN_DATA # volume默认位置: /var/lib/docker/volumes/ovpn-data # gen config docker run -v $OVPN_DATA:/etc/openvpn --log-driver=none --rm mjenz/rpi-openvpn ovpn_genconfig -u udp://xxx.wiloon.com # init pki docker run -v $OVPN_DATA:/etc/openvpn --log-driver=none --rm -it mjenz/rpi-openvpn ovpn_initpki # start server docker run -v $OVPN_DATA:/etc/openvpn -d -p 192.168.100.230:1194:1194/udp --cap-add=NET_ADMIN --name openvpn --restart=always mjenz/rpi-openvpn #Generate a client certificate docker run -v $OVPN_DATA:/etc/openvpn --log-driver=none --rm -it mjenz/rpi-openvpn easyrsa build-client-full client0 nopass # Retrieve the client configuration with embedded certificates docker run -v $OVPN_DATA:/etc/openvpn --rm mjenz/rpi-openvpn ovpn_getclient client0 > client0.ovpn docker run -v $OVPN_DATA:/etc/openvpn -p 1194:1194/udp --privileged -e DEBUG=1 mjenz/rpi-openvpn https://github.com/mje-nz/rpi-docker-openvpn ...

2018-11-27 · 1 min · 101 words · -

zentao

zentao https://github.com/idoop/zentao https://github.com/iboxpay/ldap 下载iboxpay/ldap 扩展, 作为插件安装。此插件会安装三个文件 /opt/zentao/lib/ldap/ldap.class.php # ldap 配置 /opt/zentao/module/user/ext/config/ldap.php /opt/zentao/module/user/ext/model/ldap.php 参照 https://blog.csdn.net/BigBoySunshine/article/details/80502068 修改 /opt/zentao/module/user/ext/config/ldap.php $config->ldap->ldap_server $config->ldap->ldap_root_dn $config->ldap->ldap_bind_dn $config->ldap->ldap_bind_passwd /opt/zentao/lib/ldap/ldap.class.php if ( @ldap_bind( $t_ds, "{$t_info[$i]['dn']}", $p_password ) ) { /opt/zentao/module/user/js/login.js if(password.length != 32 && typeof(md5) == 'function') $('input:password').val(password); 禅道 docker + ldap插件 checkout https://github.com/idoop/zentao 修改docker-compose.yaml 修改MySQL端口 修改volumns路径 download ldap as zip https://github.com/iboxpay/ldap 参照https://github.com/iboxpay/ldap 的readme安装插件

2018-11-26 · 1 min · 55 words · -

test for a specific port from Linux or Unix command line

test for a specific port from Linux or Unix command line https://www.cyberciti.biz/faq/ping-test-a-specific-port-of-machine-ip-address-using-linux-unix/ # check for tcp port ## ## need bash shell echo >/dev/tcp/{host}/{port} (echo >/dev/tcp/{host}/{port}) &>/dev/null && echo "open" || echo "close" (echo >/dev/udp/{host}/{port}) &>/dev/null && echo "open" || echo "close" (echo >/dev/tcp/www.cyberciti.biz/22) &>/dev/null && echo "Open 22" || echo "Close 22" (echo >/dev/tcp/www.cyberciti.biz/443) &>/dev/null && echo "Open 443" || echo "Close 443"

2018-11-26 · 1 min · 64 words · -

PD 充电协议

PD 充电协议 thinkpad的 PD 充电协议有可能和通用的 协议 不同, 某些情况下不能握手充电. 紫米65W充电器使用了USB PD中的PPS规范,而部分笔记本电脑型号较早,未有支持PPS协议规范,因为使用紫米65W充电器可能会出现充电协议“握手”失败,进而导致无法正常充电 thinkpad x1 carbon Power Adapter** [1][2] • 45W USB-C® (2-pin) AC adapter, supports PD 3.0, 100-240V, 50-60Hz • 45W USB-C (3-pin) AC adapter, supports PD 3.0, 100-240V, 50-60Hz • 65W USB-C (2-pin) AC adapter, supports PD 3.0, 100-240V, 50-60Hz • 65W USB-C slim (2-pin) AC adapter, supports PD 3.0, 100-240V, 50-60Hz • 65W USB-C slim (3-pin) AC adapter, supports PD 3.0, 100-240V, 50-60Hz

2018-11-25 · 1 min · 73 words · -

raspberry pi docker

raspberry pi docker curl -sSL https://get.docker.com | sh https://www.raspberrypi.org/blog/docker-comes-to-raspberry-pi/

2018-11-24 · 1 min · 9 words · -

helm

helm Helm 是 Kubernetes 的包管理器 # archlinux pacman -S helm # curl curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh

2018-11-24 · 1 min · 21 words · -