新站建立,自己恭喜自己一下。先抢占一个有利地形,注册一个自己喜欢的二级域名。等然后慢慢把放在其他地方的文章搬过来
新站建立,自己恭喜自己一下。先抢占一个有利地形,注册一个自己喜欢的二级域名。等然后慢慢把放在其他地方的文章搬过来
搬家自原blog:http://blog.linuxsky.net/2993
原地址:http://blog.linuxsky.net/2993/viewspace_2435.html算是我维护的部门服务器,还记得当初拿到时的兴奋劲,不知不觉已经连续运行了103天.留下照片,以示纪念:
搬家自原blog:http://blog.linuxsky.net/2993
原地址:http://blog.linuxsky.net/2993/viewspace_2433.html因为想用最新版本的mediawiki,需要php5的支持.在CU上一搜,差点被吓死.说什么问题多多,最好找台相似的机器练习,而且也没有安装成功的指导贴.算了,用自己的想法硬着头皮上吧.记录过程如下:1.首先,介绍一下我的系统软件配置:
OS: CentOS 4.3
Websoft: Apache-2.0.52/mysql-4.1.12/php-4.3.9
2.在php.net主页上下载了php-5.2.0版本的源码,解压缩就不说了
3.编译,我借用了原来rpm安装的php4的phpinof()输出结果的编译选项,稍做修改:
'./configure' '--build=i686-redhat-linux-gnu' '--host=i686-redhat-linux-gnu' '--target=i386-redhat-linux-gnu' '--prefix=/opt/php5' '--with-config-file-path=/opt/php5' '--enable-force-cgi-redirect' '--enable-pic' '--disable-rpath' '--enable-inline-optimization' '--with-bz2' '--with-db4=/usr' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--with-gd=shared' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-ncurses=shared' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png' '--with-pspell' '--with-xml' '--with-expat-dir=/usr' '--with-dom=shared,/usr' '--with-dom-xslt=/usr' '--with-dom-exslt=/usr' '--with-xmlrpc=shared' '--with-zlib' '--with-layout=GNU' '--enable-bcmath' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-track-vars' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-pear=/usr/share/pear' '--with-imap=shared' '--with-imap-ssl' '--with-kerberos' '--with-ldap=shared' '--with-mysql=shared,/usr' '--with-pgsql=shared' '--with-snmp=shared,/usr' '--with-snmp=shared' '--enable-ucd-snmp-hack' '--with-unixODBC=shared,/usr' '--enable-memory-limit' '--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--enable-mbstring=shared' '--enable-mbstr-enc-trans' '--enable-mbregex' '--with-mime-magic=/usr/share/file/magic.mime' '--with-apxs2=/usr/sbin/apxs'
我的修改是
a.为避免与原来的php4安装冲突,把–prefix=改成/opt/php5,其他所有有prefix字样的选项全部去掉
b.–with-config-file-path=改成/opt/php5,就是php.ini的位置,目的也是避免冲突
c.这个是注意点,–with-apxs2=/usr/sbin/apxs这行一定要留下,把php编译成apache的module形式,因为cgi形式我还不知道怎么做呢,呵呵
4.安装,如果./configure正常,那么就make;make install, 然后php5就安装在/opt/php5目录下了
5.把php-5.2.0源代码目录下的php.ini-dist copy到/opt/php5目录下,文件名改成php.ini这个就是–with-config-file-path=制定的配置文件目录了.你也可以根据需要修改php.ini文件
6.修改apache的配置文件httpd.conf,把
LoadModule php4_module modules/libphp4.so
改成
LoadModule php5_module modules/libphp5.so
7.重启apache
问题以及解决:
a.问题描述:
一切完成后,出现了一个问题.用浏览器访问我自己写的东西的时候出现这个
error:Fatal error: Call to undefined function mysql_pconnect()in /var/www/html/login/include/conndb.inc on line 6
但是访问mediawiki却一点问题也没有.查phpinfo()发现找不到mysql的相关信息.
b.解决过程
分析了一下觉得应该是这个原因,php没有load mysql module, 而mediawiki可以使用有可能是他用的是mysqli.
修改php.ini,
加入:extension mysql.so
修改extension_dir的值,由原来的”./”改为”/opt/php5/lib/php/20060613″ //这个是mysql.so文件所在的位置
重启apache,一切正常
总结陈词:
升级php4到php5也没有那么麻烦.只是有一些小地方需要注意.
我的方法也就是另外一个目录安装php5,修改httpd.conf文件的LoadModule来实现php4到php5的切换.如果php5安装失败或者出现什么问题,也可以通过修改httpd.conf文件切换回去.方便,实在
2007-7-18修订部分内容
搬家自原blog:http://blog.linuxsky.net/2993
原地址:http://blog.linuxsky.net/2993/viewspace_2381.html
2006-10-26补:写了那么多,还是蛮有成就感的,嘿嘿,加个声明吧:允许任意转载,但需要保证文章的完整性和我的署名,如果有时间,还希望能够告诉我一下
署名:failsafe/Simon
Email:simon.youngest@gamil.com
上篇日志中谈到John the Ripper破解SAM密码中,把过程按下不表了。这篇专门拉出来说说。
其实我就把网上的英文原稿复述一下而已。但是google上找不到中文材料,就不妨写一写了。
突然发现这两天特别忙(房子正在装修,不忙才有鬼呢),但开始了还是要写完滴,不过可能每次都写一点点,
1.软件准备:就是标题上写的John/bkhive/samdump
John比较容易找,到官方网站下载最新版本吧:www.openwall.com/john/
bkhive/samdump 打包文件我已经上传上来了,bkhive_samdump.zip (经过测试已经可用)
2.软件编译:上述软件你下载下来得到的是源代码,不能直接运行,需要一个编译过程
John的编译过程可以在下载包里面的install文件里面查看,过程很简单,编译也很容易.但是有一个问题需要注意,John本来是用来破解Unix密码的,破解SAM密码需要添加补丁.拿当前最新版本来说,主程序文件名为john-1.7.2.tar.gz, 可以在官方网站下载一个叫john-1.7.2-all-2.diff的补丁打上.具体过程官网上会有说明,就不再赘述了.
为了免去新手苦恼,大上ntlm补丁并编译好的文件(包含二进制文件和源文件已经上传,放在这里)
bkhive和samdump编译: 解开打包的bkhive_samdump2.zip文件后会有两个文件夹,bkhive_linux 和samdump2_linux,用下面方法编译:
bkhive编译:
$cd bkhive
$g++ -o bkhive *.cpp
编译完成后,bkhive文件夹内产生一个名为bkhive的二进制文件供我们使用
samdump编译:
$cd samdump
$cd des/
$tar zxvf libdes-4.01.tar.gz
$make gcc
$cd ..
$gcc -c md5_dgst.c rc4_enc.c rc4_skey.c
$g++ -o samdump2 samdump2.cpp hive.cpp md5_dgst.o rc4_enc.o rc4_skey.o /des/libdes.a
编译完成后,samdemp文件夹内产生一个叫samdump2的二进制文件供我们使用
3.被破解文件准备,以XP系统为例:
传说中的SAM文件: C:\windows\system32\config\SAM
system文件:C:\windows\system32\config\system
这两个文件一般来说在windows下是得不到的,即使你有管理员权限(但是LC4可以在管理员权限下直接得到SAM文件进行破解,但是既然已经有管理员权限,为什么还要破解??).我这边推荐几种方法:
a.如果本机装有Linux,那么就进入Linux, mount windows系统所在分区, 再copy这两个文件
b.如果本级没有装Linux,但是有光驱的话,可以通过准备Linux Live CD 如knoppix等进入Linux,之后同a方法copy以上文件
c.如果windows系统文件是fat格式, 也可以通过光驱/软驱进入纯dos来copy以上文件
d.现在也有一些方法通过修改boot.ini文件从硬盘引导dos image 或者支持ntfs的dose image,可以再没有光驱/软驱的情况下得到以上两个文件,但是你需要有修改boot.ini的权限(似乎需要较大的权限)
e.总之方法不会局限与一两种,决定与你的主观能动性,黑客知名宣言说:”进入电脑的路不会只有一条.”终极一条叫社会工程学,简而言之就向系统管理员要密码(可能需要系统管理员直属主管权限)
f.过渡发挥了,打住,打住
4.被破解文件处理:
先用bkhive从system文件生成一个bootkey文件
bkhive/bkhive system bootkey
再用bootkey和SAM文件通过samdump2生成一个密码hash文件
samdump/samdump2 SAM bootkey > hashes
5.终于,我们可以用到John进行密码破解了
John的用法很多,他的doc/EXAMPLE文件里面有详细的介绍,有兴趣的话可以好好研究一下.不过当时我是不管三七二十一直接就是
john-1.7.2/run/john hashes
让他开始破,第二天早上上班一看,hoho,密码出来鸟.比如administrator密码是123456,那么他会在最底下这么显示
administrator:123456:500:e263f50a6a506be3d494d3d62b4dc666:::
看起来有点像/etc/passwd的内容格式,如果当时没有看清楚密码就清屏了,或者后来忘记已经破解了的密码,可以通过下面命令查看
john-1.7.2/run/john -show hashes
有的时候密码处有可能会显示几个问号,如下
administrator:???456:500:e263f50a6a506be3d494d3d62b4dc666:::
这个时候可以通过
john-1.7.2/run/john -show hashes
看看密码是否完整. 如果还是不完整,那么可能密码没有完全破解完毕,可以加–restore 参数从原来基础上继续破解
john-1.7.2/run/john --restore hashes
我对john使用的了解也就差不多是这样了,如果有什么不明白的,可以参考john的doc/目录下的一些文档,或者访问john的官方网站
好了,终于写完了,good luck
搬家自原blog:http://blog.linuxsky.net/2993
原地址:http://blog.linuxsky.net/2993/viewspace_2379.html
我的部门服务器已经连续运行74天了,数据备份成为我的一大心病.6个课每天的交接数据,要是哪天挂了,也是不好交差阿.
也不是我不想备份,实在是优点困难.公司对办公室的电脑实行了域服务器控制,本地账户全删,administrator禁用,域登录用户权限卡得那叫一个紧哟,C盘没有写的权限.已经装的软件用下可以,装软件只能用绿色的,文件夹共享权限全无,加服务就更别想了.备份到哪里去呢???
机缘巧合之下,我听说一个叫做John the ripper可以破解SAM密码,只消一个晚上,十位的管理员密码出现在了我的眼前(具体过程按下不表).
本来打算用mount smbfs进行网络备份,但是还是网络用户认证的问体搞的郁闷,干脆放弃,另觅他方. google了一下,还是觉得ftp备份比较可行.过程比较简单,分成四步走:在我的办公电脑上装上ftp服务,我选了Filezilla,谁叫我对开源软件情有独钟呢?
在服务器(CentOS4.3)的用户目录下建立.netrc文件如下,用做ftp非交互方式传输我所需要的备份的文件.该文件的用处可以参考chinaunix上的这篇文章
_lcd=/tmp/backup-`date +%Y%mYd`
cd $_lcd
machine 03b-000164.xxoo.com
login centos
password ******
macdef init
bin
cd upload
mput *.tar.gz
bye
另外建一个shell文件,我把它命名为mysql.tar,加上执行权限,写上需要备份的相关shell命令. 其中最后一句是关键性的,因为它连接的服务器恰好就是.netrc文件上的machine后面那个,所以会自动根据.netrc上的命令执行
#!/bin/sh
_dir=/tmp/backup-`date +%Y%m%d%H`
rm -rf $_dir
mkdir $_dir
cd $_dir
mkdir mysql
cp -r /var/lib/mysql/* $_dir/mysql
tar czf mysql-`date +%y%m%d%H`.tar.gz mysql
ftp -i 03b-000164.xxoo.com
用crontab定期执行mysql.tar文件,我嫌crontab -e编辑太烦,就用webmin,在鼠标点了几下:)
这边我使用数据库备份的方式是直接备份/var/lib/mysql 目录下的那些数据库存储原始文件,不知道这样做是否合理,还请高手指教
搬家自原blog:http://blog.linuxsky.net/2993
原地址:http://blog.linuxsky.net/2993/viewspace_2205.html
今天配置完成了samba服务,记录配置文件如下,一遍以后查询
smb.conf文件内容:
[global] workgroup = sinomos server string = E3 Samba Server | Powered by Simon log file = /var/log/samba/%m.log max log size = 50 security = user encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = no idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template shell = /bin/false winbind use default domain = no [homes] comment = Home Directories browseable = no writable = yes valid users = %S create mode = 0664 directory mode = 0775 [printers] [photope] comment = photo pe share disk path = /home/photope public = no valid users = photope write list = photope printable = no [etchpe] comment = etch pe share disk path = /home/etchpe public = no valid users = @etchpe write list = etchpe printable = no [public] comment = Public File Directory path = /home/samba public = yes writable = yes
添加所需用户到samba:
#smbpasswd -a photope #smbpasswd -a etchpe