zz Kerberos简介
Kerberos协议:
Kerberos协议主要用于计算机网络的身份鉴别(Authentication), 其特点是用户只需输入一次身份验证信息就可以凭借此验证获得的票据(ticket-granting ticket)访问多个服务,即SSO(Single Sign On)。由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。
条件
先来看看Kerberos协议的前提条件:
如下图所示,Client与KDC, KDC与Service 在协议工作前已经有了各自的共享密钥,并且由于协议中的消息无法穿透防火墙,这些条件就限制了Kerberos协议往往用于一个组织的内部, 使其应用场景不同于X.509 PKI。

ssh的使用
主要记录一下地址缩写和保持长连接,具体的使用和配置参数可以"man ssh"、"man ssh_config"了解得到。
服务器地址缩写
要登陆一台地址为endlesscode.com,用户名为stephenchan,连接的端口为9527的服务器,需运行以下命令:
ssh stephenchan@endlesscode.com -p 9527
每次都要打这么长的一句命令是件麻烦的事,不过ssh提供地址缩写的功能,可以直接"ssh myserver"就可以了,只要在ssh的配置文件(~/.ssh/config)中,添加以下内容:
Host myserver #缩写的地址,在命令行中使用ssh myserver登陆 HostName 192.168.23.202 #服务器的地址 Port 32200 #ssh的端口 User stephenchan #use name Protocol 2 #协议版本,可选 ForwardAgent yes #自动调用登陆管理器,可选 Compression yes #压缩传输,可选
以上的配置是针对一个服务器登陆的配置,也可以在配置文件中以同样的形式配置多台服务器,彼此间不冲突。
zz 各种工具之正则表达式语法比较
在各种常用的工具中,
正则表达式如此的相似却又不同。
下表列出了一些常用的正则表达式,以及其不同之处。
项目总多,遗漏必有不少,请各位看官不吝指出。
以perl的正则为基准,不同的用法以粉红色标出。
| grep 2.5.1 | egrep 2.5.1 | sed 3.02 sed 4.07 |
awk 3.1.1 | perl 5.8.0 | vim 6.1 | JavaScript ?? | |
| 转义 | \ | \ | \ | \ | \ | \ | \ |
| 行头 | ^ | ^ | ^ | ^ | ^ | ^ | ^ |
| 行尾 | $ | $ | $ | $ | $ | $ | $ |
| n个 {n} {m,n} {m,} {,n} | \{n\} | {n} | \{n\} | {n}或\{n\} 仅定义 --posix 或 --re-interval有效(要表达}和{,得用\\{和\\} 没有定义--posix或--re-interval时,不能用{n}的语法, \}\{和}{同义 | {n} | \{n\} | {n} |
| {0,} | * | * | * | *或\*, (要表达*,得用\\*) | * | * | * |
| {1,} | \+ | + | \+ | +或\+, (要表达+, 得用\\+) | + | \+ | + |
| {0,1} | \? | ? | \? | ?或\?, (要表达?, 得用\\?) | ? | \? | ? |
| 任意字符 | . | . | . | . 含\n. | . /s修饰后则含\n | . 除\n | . 除\n |
安装bochs
在KarmicKoala上使用apt-get的方式安装bochs是没有调试功能的,需要进行手动的方式进行安装并设置"--enable-debugger --enable-disasm"两个参数,以手动安装先后出现了两个问题:
- ERROR: X windows gui was selected, but X windows libraries were not found."
- ERROR: pkg-config was not found, or unable to access the gtk+-2.0 package.
于是google了一下,将下面的库都安装了就成功装上bochs了:
apt-get install build-essential
apt-get install libwxgtk2.6-0
apt-get install libwxgtk2.6-dev wx2.6-headers wx-common
apt-get install libx11-dev
apt-get install libxmu-dev
apt-get install libxmuu-dev
apt-get install xserver-xorg-dev
apt-get install xorg-dev
apt-get install libgtk2.0-dev
没有详细去了解为什么要装这些库,可能是因为调试的功能需要用到一些X window和gtk的开发包吧。
Moinmoin
一、简介
Moinmoin是一个高级,易用,可扩展的Wiki引擎,并且拥有比较大的用户群。Moinmoin是由Python编写的开源Wiki,详细的介绍请参考http://moinmo.in/
二、安装
Moinmoin有多种服务器配置方式,下面描述Moinmoin使用FastCGI的安装流程。
- 从http://moinmo.in/下载Moinmoin的安装包(示例使用的是1.8.5版 本),并解压出来,会看到有”setup.py”,”/wiki”,”/MoinMoin”等文件和目录。在Moinmoin中创建一个wiki实际是创 建了一个wiki的实例,也就是说对于一些静态的文件,如js,css,html等静态的内容,会被所有的wiki实例所共用,而每个wiki所特有的是 该wiki实例的数据文件和相关的配置文件等。把安装包解压之后,在解压的目录下运行”python setup.py install”把Moinmoin的库安装到本机的Python库中。
- 在解压出来的内容中,有一个wiki的目录,这个目录的内容就是Moinmoin的wiki所包含的所有文件了,其子目录如下:
- data: 包含了wiki page和user data,只有Moinmoin才能访问;
- underlay: 包含了Moinmoin默认的帮助页面和模板,只有Moinmoin才能访问;
- htdocs: 包括了Moinmoin的静态支持文件,如js和css,Web服务器需要有权限访问此目录;
- server: Moinmoin的一些示例启动文件;
- config: Moinmoin的一些示例配置文件。
新建一个目录存放wiki的data和underlay目录的文件(mkdir mywiki),然后把data和underlay两个目录拷到新创建的目录中(mywiki)。至于htdocs,存放的位置随意,但要保证Web服务器可以访问。
- 在mywiki目录新建一个目录用于存放Moinmoin的起动脚本(mkdir cgi-bin),并把server目录中的moin.cgi拷贝到cgi-bin目录,同时也把config目录中的wikiconfig.py文件拷 贝到mywiki的目录下,操作之后mywiki的目录结构如下:
-/mywiki
--/cgi-bin/moin.cgi
--/data/
--/underlay/
--wikiconfig.py