Apr
27
wget 是一个从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。
所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。
wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递归下载”。在递归下载的时候,wget 遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。
wget 非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务 器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。
wget的常见用法:
wget不但功能强大,而且使用起来比较简单,
基本的语法是:wget [参数列表] “URL” 用”"引起来可以避免因URL中有特殊字符造成的下载出错。
下面就结合具体的例子来说明一下wget的用法。
1、下载整个http或者ftp站点。
wget http://place.your.url/here
这个命令可以将http://place.your.url/here 首页下载下来。使用-x会强制建立服务器上一模一样的目录,如果使用-nd参数,那么服务器上下载的所有内容都会加到本地当前目录。
wget -r http://place.your.url/here
这个命令会按照递归的方法,下载服务器上所有的目录和文件,实质就是下载整个网站。这个命令一定要小心使用,因为在下载的时候,被下载网站指向的所有地址 同样会被下载,因此,如果这个网站引用了其他网站,那么被引用的网站也会被下载下来!基于这个原因,这个参数不常用。可以用-l number参数来指定下载的层次。例如只下载两层,那么使用-l 2。
要是您想制作镜像站点,那么可以使用-m参数,例如:
wget -m http://place.your.url/here
这时wget会自动判断合适的参数来制作镜像站点。此时,wget会登录到服务器上,读入robots.txt并按robots.txt的规定来执行。
2、断点续传。
当文件特别大或者网络特别慢的时候,往往一个文件还没有下载完,连接就已经被切断,此时就需要断点续传。wget的断点续传是自动的,只需要使用-c参数,例如:
wget -c http://the.url.of/incomplete/file
使用断点续传要求服务器支持断点续传。-t参数表示重试次数,例如需要重试100次,那么就写-t 100,如果设成-t 0,那么表示无穷次重试,直到连接成功。-T参数表示超时等待时间,例如-T 120,表示等待120秒连接不上就算超时。
3、批量下载。
如果有多个文件需要下载,那么可以生成一个文件,把每个文件的URL写一行,例如生成文件download.txt,然后用命令:wget -i download.txt
这样就会把download.txt里面列出的每个URL都下载下来。(如果列的是文件就下载文件,如果列的是网站,那么下载首页)
4、选择性的下载。
可以指定让wget只下载一类文件,或者不下载什么文件。例如:
wget -m –reject=gif http://target.web.site/subdirectory
表示下载http://target.web.site/subdirectory,但是忽略gif文件。–accept=LIST 可以接受的文件类型,–reject=LIST拒绝接受的文件类型。
5、密码和认证。
wget只能处理利用用户名/密码方式限制访问的网站,可以利用两个参数:
–http-user=USER设置HTTP用户
–http-passwd=PASS设置HTTP密码
对于需要证书做认证的网站,就只能利用其他下载工具了,例如curl。
6、利用代理服务器进行下载。
如果用户的网络需要经过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时需要在当前用户的目录下创建一个.wgetrc文件。文件中可以设置代理服务器:
http-proxy = 111.111.111.111:8080
ftp-proxy = 111.111.111.111:8080
分别表示http的代理服务器和ftp的代理服务器。如果代理服务器需要密码则使用:
–proxy-user=USER设置代理用户
–proxy-passwd=PASS设置代理密码
这两个参数。
使用参数–proxy=on/off 使用或者关闭代理。
wget还有很多有用的功能,需要用户去挖掘。
wget的使用格式
Usage: wget [OPTION]… [URL]…
* 用wget做站点镜像:
wget -r -p -np -k http://dsec.pku.edu.cn/~usr_name/
# 或者wget -m http://dsec.pku.edu.cn/~usr_name/
* 在不稳定的网络上下载一个部分下载的文件,以及在空闲时段下载
wget -t 0 -w 31 -c http://dsec.pku.edu.cn/BBC.avi -o down.log &
# 或者从filelist读入要下载的文件列表
wget -t 0 -w 31 -c -B ftp://dsec.pku.edu.cn/linuxsoft -i filelist.txt -o down.log &
上面的代码还可以用来在网络比较空闲的时段进行下载。我的用法是:在mozilla中将不方便当时下载的URL链接拷贝到内存中然后粘贴到文件 filelist.txt中,在晚上要出去系统前执行上面代码的第二条。
* 使用代理下载
wget -Y on -p -k https://sourceforge.net/projects/wvware/
代理可以在环境变量或wgetrc文件中设定
# 在环境变量中设定代理
export PROXY=http://211.90.168.94:8080/
# 在~/.wgetrc中设定代理
http_proxy = http://proxy.yoyodyne.com:18023/
ftp_proxy = http://proxy.yoyodyne.com:18023/
wget各种选项分类列表
* 启动
-V, –version 显示wget的版本后退出
-h, –help 打印语法帮助
-b, –background 启动后转入后台执行
-e, –execute=COMMAND 执行`.wgetrc’格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc
* 记录和输入文件
-o, –output-file=FILE 把记录写到FILE文件中
-a, –append-output=FILE 把记录追加到FILE文件中
-d, –debug 打印调试输出
-q, –quiet 安静模式(没有输出)
-v, –verbose 冗长模式(这是缺省设置)
-nv, –non-verbose 关掉冗长模式,但不是安静模式
-i, –input-file=FILE 下载在FILE文件中出现的URLs
-F, –force-html 把输入文件当作HTML格式文件对待
-B, –base=URL 将URL作为在-F -i参数指定的文件中出现的相对链接的前缀
–sslcertfile=FILE 可选客户端证书
–sslcertkey=KEYFILE 可选客户端证书的KEYFILE
–egd-file=FILE 指定EGD socket的文件名
* 下载
–bind-address=ADDRESS 指定本地使用地址(主机名或IP,当本地有多个IP或名字时使用)
-t, –tries=NUMBER 设定最大尝试链接次数(0 表示无限制).
-O –output-document=FILE 把文档写到FILE文件中
-nc, –no-clobber 不要覆盖存在的文件或使用.#前缀
-c, –continue 接着下载没下载完的文件
–progress=TYPE 设定进程条标记
-N, –timestamping 不要重新下载文件除非比本地文件新
-S, –server-response 打印服务器的回应
–spider 不下载任何东西
-T, –timeout=SECONDS 设定响应超时的秒数
-w, –wait=SECONDS 两次尝试之间间隔SECONDS秒
–waitretry=SECONDS 在重新链接之间等待1…SECONDS秒
–random-wait 在下载之间等待0…2*WAIT秒
-Y, –proxy=on/off 打开或关闭代理
-Q, –quota=NUMBER 设置下载的容量限制
–limit-rate=RATE 限定下载输率
* 目录
-nd –no-directories 不创建目录
-x, –force-directories 强制创建目录
-nH, –no-host-directories 不创建主机目录
-P, –directory-prefix=PREFIX 将文件保存到目录 PREFIX/…
–cut-dirs=NUMBER 忽略 NUMBER层远程目录
* HTTP 选项
–http-user=USER 设定HTTP用户名为 USER.
–http-passwd=PASS 设定http密码为 PASS.
-C, –cache=on/off 允许/不允许服务器端的数据缓存 (一般情况下允许).
-E, –html-extension 将所有text/html文档以.html扩展名保存
–ignore-length 忽略 `Content-Length’头域
–header=STRING 在headers中插入字符串 STRING
–proxy-user=USER 设定代理的用户名为 USER
–proxy-passwd=PASS 设定代理的密码为 PASS
–referer=URL 在HTTP请求中包含 `Referer: URL’头
-s, –save-headers 保存HTTP头到文件
-U, –user-agent=AGENT 设定代理的名称为 AGENT而不是 Wget/VERSION.
–no-http-keep-alive 关闭 HTTP活动链接 (永远链接).
–cookies=off 不使用 cookies.
–load-cookies=FILE 在开始会话前从文件 FILE中加载cookie
–save-cookies=FILE 在会话结束后将 cookies保存到 FILE文件中
* FTP 选项
-nr, –dont-remove-listing 不移走 `.listing’文件
-g, –glob=on/off 打开或关闭文件名的 globbing机制
–passive-ftp 使用被动传输模式 (缺省值).
–active-ftp 使用主动传输模式
–retr-symlinks 在递归的时候,将链接指向文件(而不是目录)
* 递归下载
-r, –recursive 递归下载--慎用!
-l, –level=NUMBER 最大递归深度 (inf 或 0 代表无穷).
–delete-after 在现在完毕后局部删除文件
-k, –convert-links 转换非相对链接为相对链接
-K, –backup-converted 在转换文件X之前,将之备份为 X.orig
-m, –mirror 等价于 -r -N -l inf -nr.
-p, –page-requisites 下载显示HTML文件的所有图片
* 递归下载中的包含和不包含(accept/reject)
-A, –accept=LIST 分号分隔的被接受扩展名的列表
-R, –reject=LIST 分号分隔的不被接受的扩展名的列表
-D, –domains=LIST 分号分隔的被接受域的列表
–exclude-domains=LIST 分号分隔的不被接受的域的列表
–follow-ftp 跟踪HTML文档中的FTP链接
–follow-tags=LIST 分号分隔的被跟踪的HTML标签的列表
-G, –ignore-tags=LIST 分号分隔的被忽略的HTML标签的列表
-H, –span-hosts 当递归时转到外部主机
-L, –relative 仅仅跟踪相对链接
-I, –include-directories=LIST 允许目录的列表
-X, –exclude-directories=LIST 不被包含目录的列表
-np, –no-parent 不要追溯到父目录
wget -S –spider url 不下载只显示过程
所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。
wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递归下载”。在递归下载的时候,wget 遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。
wget 非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务 器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。
wget的常见用法:
wget不但功能强大,而且使用起来比较简单,
基本的语法是:wget [参数列表] “URL” 用”"引起来可以避免因URL中有特殊字符造成的下载出错。
下面就结合具体的例子来说明一下wget的用法。
1、下载整个http或者ftp站点。
wget http://place.your.url/here
这个命令可以将http://place.your.url/here 首页下载下来。使用-x会强制建立服务器上一模一样的目录,如果使用-nd参数,那么服务器上下载的所有内容都会加到本地当前目录。
wget -r http://place.your.url/here
这个命令会按照递归的方法,下载服务器上所有的目录和文件,实质就是下载整个网站。这个命令一定要小心使用,因为在下载的时候,被下载网站指向的所有地址 同样会被下载,因此,如果这个网站引用了其他网站,那么被引用的网站也会被下载下来!基于这个原因,这个参数不常用。可以用-l number参数来指定下载的层次。例如只下载两层,那么使用-l 2。
要是您想制作镜像站点,那么可以使用-m参数,例如:
wget -m http://place.your.url/here
这时wget会自动判断合适的参数来制作镜像站点。此时,wget会登录到服务器上,读入robots.txt并按robots.txt的规定来执行。
2、断点续传。
当文件特别大或者网络特别慢的时候,往往一个文件还没有下载完,连接就已经被切断,此时就需要断点续传。wget的断点续传是自动的,只需要使用-c参数,例如:
wget -c http://the.url.of/incomplete/file
使用断点续传要求服务器支持断点续传。-t参数表示重试次数,例如需要重试100次,那么就写-t 100,如果设成-t 0,那么表示无穷次重试,直到连接成功。-T参数表示超时等待时间,例如-T 120,表示等待120秒连接不上就算超时。
3、批量下载。
如果有多个文件需要下载,那么可以生成一个文件,把每个文件的URL写一行,例如生成文件download.txt,然后用命令:wget -i download.txt
这样就会把download.txt里面列出的每个URL都下载下来。(如果列的是文件就下载文件,如果列的是网站,那么下载首页)
4、选择性的下载。
可以指定让wget只下载一类文件,或者不下载什么文件。例如:
wget -m –reject=gif http://target.web.site/subdirectory
表示下载http://target.web.site/subdirectory,但是忽略gif文件。–accept=LIST 可以接受的文件类型,–reject=LIST拒绝接受的文件类型。
5、密码和认证。
wget只能处理利用用户名/密码方式限制访问的网站,可以利用两个参数:
–http-user=USER设置HTTP用户
–http-passwd=PASS设置HTTP密码
对于需要证书做认证的网站,就只能利用其他下载工具了,例如curl。
6、利用代理服务器进行下载。
如果用户的网络需要经过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时需要在当前用户的目录下创建一个.wgetrc文件。文件中可以设置代理服务器:
http-proxy = 111.111.111.111:8080
ftp-proxy = 111.111.111.111:8080
分别表示http的代理服务器和ftp的代理服务器。如果代理服务器需要密码则使用:
–proxy-user=USER设置代理用户
–proxy-passwd=PASS设置代理密码
这两个参数。
使用参数–proxy=on/off 使用或者关闭代理。
wget还有很多有用的功能,需要用户去挖掘。
wget的使用格式
Usage: wget [OPTION]… [URL]…
* 用wget做站点镜像:
wget -r -p -np -k http://dsec.pku.edu.cn/~usr_name/
# 或者wget -m http://dsec.pku.edu.cn/~usr_name/
* 在不稳定的网络上下载一个部分下载的文件,以及在空闲时段下载
wget -t 0 -w 31 -c http://dsec.pku.edu.cn/BBC.avi -o down.log &
# 或者从filelist读入要下载的文件列表
wget -t 0 -w 31 -c -B ftp://dsec.pku.edu.cn/linuxsoft -i filelist.txt -o down.log &
上面的代码还可以用来在网络比较空闲的时段进行下载。我的用法是:在mozilla中将不方便当时下载的URL链接拷贝到内存中然后粘贴到文件 filelist.txt中,在晚上要出去系统前执行上面代码的第二条。
* 使用代理下载
wget -Y on -p -k https://sourceforge.net/projects/wvware/
代理可以在环境变量或wgetrc文件中设定
# 在环境变量中设定代理
export PROXY=http://211.90.168.94:8080/
# 在~/.wgetrc中设定代理
http_proxy = http://proxy.yoyodyne.com:18023/
ftp_proxy = http://proxy.yoyodyne.com:18023/
wget各种选项分类列表
* 启动
-V, –version 显示wget的版本后退出
-h, –help 打印语法帮助
-b, –background 启动后转入后台执行
-e, –execute=COMMAND 执行`.wgetrc’格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc
* 记录和输入文件
-o, –output-file=FILE 把记录写到FILE文件中
-a, –append-output=FILE 把记录追加到FILE文件中
-d, –debug 打印调试输出
-q, –quiet 安静模式(没有输出)
-v, –verbose 冗长模式(这是缺省设置)
-nv, –non-verbose 关掉冗长模式,但不是安静模式
-i, –input-file=FILE 下载在FILE文件中出现的URLs
-F, –force-html 把输入文件当作HTML格式文件对待
-B, –base=URL 将URL作为在-F -i参数指定的文件中出现的相对链接的前缀
–sslcertfile=FILE 可选客户端证书
–sslcertkey=KEYFILE 可选客户端证书的KEYFILE
–egd-file=FILE 指定EGD socket的文件名
* 下载
–bind-address=ADDRESS 指定本地使用地址(主机名或IP,当本地有多个IP或名字时使用)
-t, –tries=NUMBER 设定最大尝试链接次数(0 表示无限制).
-O –output-document=FILE 把文档写到FILE文件中
-nc, –no-clobber 不要覆盖存在的文件或使用.#前缀
-c, –continue 接着下载没下载完的文件
–progress=TYPE 设定进程条标记
-N, –timestamping 不要重新下载文件除非比本地文件新
-S, –server-response 打印服务器的回应
–spider 不下载任何东西
-T, –timeout=SECONDS 设定响应超时的秒数
-w, –wait=SECONDS 两次尝试之间间隔SECONDS秒
–waitretry=SECONDS 在重新链接之间等待1…SECONDS秒
–random-wait 在下载之间等待0…2*WAIT秒
-Y, –proxy=on/off 打开或关闭代理
-Q, –quota=NUMBER 设置下载的容量限制
–limit-rate=RATE 限定下载输率
* 目录
-nd –no-directories 不创建目录
-x, –force-directories 强制创建目录
-nH, –no-host-directories 不创建主机目录
-P, –directory-prefix=PREFIX 将文件保存到目录 PREFIX/…
–cut-dirs=NUMBER 忽略 NUMBER层远程目录
* HTTP 选项
–http-user=USER 设定HTTP用户名为 USER.
–http-passwd=PASS 设定http密码为 PASS.
-C, –cache=on/off 允许/不允许服务器端的数据缓存 (一般情况下允许).
-E, –html-extension 将所有text/html文档以.html扩展名保存
–ignore-length 忽略 `Content-Length’头域
–header=STRING 在headers中插入字符串 STRING
–proxy-user=USER 设定代理的用户名为 USER
–proxy-passwd=PASS 设定代理的密码为 PASS
–referer=URL 在HTTP请求中包含 `Referer: URL’头
-s, –save-headers 保存HTTP头到文件
-U, –user-agent=AGENT 设定代理的名称为 AGENT而不是 Wget/VERSION.
–no-http-keep-alive 关闭 HTTP活动链接 (永远链接).
–cookies=off 不使用 cookies.
–load-cookies=FILE 在开始会话前从文件 FILE中加载cookie
–save-cookies=FILE 在会话结束后将 cookies保存到 FILE文件中
* FTP 选项
-nr, –dont-remove-listing 不移走 `.listing’文件
-g, –glob=on/off 打开或关闭文件名的 globbing机制
–passive-ftp 使用被动传输模式 (缺省值).
–active-ftp 使用主动传输模式
–retr-symlinks 在递归的时候,将链接指向文件(而不是目录)
* 递归下载
-r, –recursive 递归下载--慎用!
-l, –level=NUMBER 最大递归深度 (inf 或 0 代表无穷).
–delete-after 在现在完毕后局部删除文件
-k, –convert-links 转换非相对链接为相对链接
-K, –backup-converted 在转换文件X之前,将之备份为 X.orig
-m, –mirror 等价于 -r -N -l inf -nr.
-p, –page-requisites 下载显示HTML文件的所有图片
* 递归下载中的包含和不包含(accept/reject)
-A, –accept=LIST 分号分隔的被接受扩展名的列表
-R, –reject=LIST 分号分隔的不被接受的扩展名的列表
-D, –domains=LIST 分号分隔的被接受域的列表
–exclude-domains=LIST 分号分隔的不被接受的域的列表
–follow-ftp 跟踪HTML文档中的FTP链接
–follow-tags=LIST 分号分隔的被跟踪的HTML标签的列表
-G, –ignore-tags=LIST 分号分隔的被忽略的HTML标签的列表
-H, –span-hosts 当递归时转到外部主机
-L, –relative 仅仅跟踪相对链接
-I, –include-directories=LIST 允许目录的列表
-X, –exclude-directories=LIST 不被包含目录的列表
-np, –no-parent 不要追溯到父目录
wget -S –spider url 不下载只显示过程
Apr
27
使用MySQL,安全问题不能不注意。以下是MySQL提示的23个注意事项:
1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。
2.用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,然后“mysql> update mysql.user set password=password(‘newpwd’)”,最后执行“flush privileges”就可以了。
3.需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他操作使用基于ACL即访问控制列表的安全措施来完成。也有一些对SSL连接的支持。
4.除了root用户外的其他任何用户不允许访问mysql主数据库中的user表;
加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;
5.用grant和revoke语句来进行用户访问控制的工作;
6.不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;
7.不选用字典中的字来做密码;
8.采用防火墙来去掉50%的外部危险,让数据库系统躲在防火墙后面工作,或放置在DMZ区域中;
9.从因特网上用nmap来扫描3306端口,也可用telnet server_host 3306的方法测试,不能允许从非信任网络中访问数据库服务器的3306号TCP端口,因此需要在防火墙或路由器上做设定;
10.为了防止被恶意传入非法参数,例如where ID=234,别人却输入where ID=234 or 1=1导致全部显示,所以在web的表单中使用”或”"来用字符串,在动态URL中加入%22代表双引号、%23代表井号、%27代表单引号;传递未检查过的值给mysql数据库是非常危险的;
11.在传递数据给mysql时检查一下大小;
12.应用程序需要连接到数据库应该使用一般的用户帐号,只开放少数必要的权限给该用户;
13.在各编程接口(C C++ PHP Perl Java JDBC等)中使用特定‘逃脱字符’函数;
在因特网上使用mysql数据库时一定少用传输明文的数据,而用SSL和SSH的加密方式数据来传输;
14.学会使用tcpdump和strings工具来查看传输数据的安全性,例如tcpdump -l -i eth0 -w -src or dst port 3306 | strings。以普通用户来启动mysql数据库服务;
15.不使用到表的联结符号,选用的参数 –skip-symbolic-links;
16.确信在mysql目录中只有启动数据库服务的用户才可以对文件有读和写的权限;
17.不许将process或super权限付给非管理用户,该mysqladmin processlist可以列举出当前执行的查询文本;super权限可用于切断客户端连接、改变服务器运行参数状态、控制拷贝复制数据库的服务器;
18.file权限不付给管理员以外的用户,防止出现load data ‘/etc/passwd’到表中再用select 显示出来的问题;
19.如果不相信DNS服务公司的服务,可以在主机名称允许表中只设置IP数字地址;
20.使用max_user_connections变量来使mysqld服务进程,对一个指定帐户限定连接数;
21.grant语句也支持资源控制选项;
22.启动mysqld服务进程的安全选项开关,–local-infile=0或1 若是0则客户端程序就无法使用local load data了,赋权的一个例子grant insert(user) on mysql.user to ‘user_name’@'host_name’;若使用–skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,可以用–skip-show-databases来关闭掉。
23.碰到Error 1045(28000) Access Denied for user ‘root’@'localhost’ (Using password:NO)错误时,你需要重新设置密码,具体方法是:先用–skip-grant-tables参数启动mysqld,然后执行mysql -u root mysql,mysql>update user set password=password(‘newpassword’) where user=’root’;mysql>Flush privileges;,最后重新启动mysql就可以了。
1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。
2.用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,然后“mysql> update mysql.user set password=password(‘newpwd’)”,最后执行“flush privileges”就可以了。
3.需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他操作使用基于ACL即访问控制列表的安全措施来完成。也有一些对SSL连接的支持。
4.除了root用户外的其他任何用户不允许访问mysql主数据库中的user表;
加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;
5.用grant和revoke语句来进行用户访问控制的工作;
6.不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;
7.不选用字典中的字来做密码;
8.采用防火墙来去掉50%的外部危险,让数据库系统躲在防火墙后面工作,或放置在DMZ区域中;
9.从因特网上用nmap来扫描3306端口,也可用telnet server_host 3306的方法测试,不能允许从非信任网络中访问数据库服务器的3306号TCP端口,因此需要在防火墙或路由器上做设定;
10.为了防止被恶意传入非法参数,例如where ID=234,别人却输入where ID=234 or 1=1导致全部显示,所以在web的表单中使用”或”"来用字符串,在动态URL中加入%22代表双引号、%23代表井号、%27代表单引号;传递未检查过的值给mysql数据库是非常危险的;
11.在传递数据给mysql时检查一下大小;
12.应用程序需要连接到数据库应该使用一般的用户帐号,只开放少数必要的权限给该用户;
13.在各编程接口(C C++ PHP Perl Java JDBC等)中使用特定‘逃脱字符’函数;
在因特网上使用mysql数据库时一定少用传输明文的数据,而用SSL和SSH的加密方式数据来传输;
14.学会使用tcpdump和strings工具来查看传输数据的安全性,例如tcpdump -l -i eth0 -w -src or dst port 3306 | strings。以普通用户来启动mysql数据库服务;
15.不使用到表的联结符号,选用的参数 –skip-symbolic-links;
16.确信在mysql目录中只有启动数据库服务的用户才可以对文件有读和写的权限;
17.不许将process或super权限付给非管理用户,该mysqladmin processlist可以列举出当前执行的查询文本;super权限可用于切断客户端连接、改变服务器运行参数状态、控制拷贝复制数据库的服务器;
18.file权限不付给管理员以外的用户,防止出现load data ‘/etc/passwd’到表中再用select 显示出来的问题;
19.如果不相信DNS服务公司的服务,可以在主机名称允许表中只设置IP数字地址;
20.使用max_user_connections变量来使mysqld服务进程,对一个指定帐户限定连接数;
21.grant语句也支持资源控制选项;
22.启动mysqld服务进程的安全选项开关,–local-infile=0或1 若是0则客户端程序就无法使用local load data了,赋权的一个例子grant insert(user) on mysql.user to ‘user_name’@'host_name’;若使用–skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,可以用–skip-show-databases来关闭掉。
23.碰到Error 1045(28000) Access Denied for user ‘root’@'localhost’ (Using password:NO)错误时,你需要重新设置密码,具体方法是:先用–skip-grant-tables参数启动mysqld,然后执行mysql -u root mysql,mysql>update user set password=password(‘newpassword’) where user=’root’;mysql>Flush privileges;,最后重新启动mysql就可以了。
Apr
27
红帽刚刚发布了企业Linux RHEL 6.0 的 Beta 版本,该版本最值得关注的改进包括:
•全面的电源管理功能
•性能提升
•可伸缩性的增强
•新的安全特性
•虚拟化
•存储改进,支持通过 FCoE 和 iSCSI 支持网络块设备
•支持 EXT4 文件系统
•可靠性、可用性以及适用性
•增强的编译工具——GCC 4.4
•桌面的改进,支持多个虚拟化桌面
可通过下列地址来下载此 Beta 版本:
http://www.redhat.com/rhel/beta/
RHEL6.0-AP-i386-DVD1.iso (3,650MB, SHA256)
RHEL6.0-20100414.0-AP-x86_64-DVD1.iso (4,105MB, SHA256).
Via RedHat Press
截图:

•全面的电源管理功能
•性能提升
•可伸缩性的增强
•新的安全特性
•虚拟化
•存储改进,支持通过 FCoE 和 iSCSI 支持网络块设备
•支持 EXT4 文件系统
•可靠性、可用性以及适用性
•增强的编译工具——GCC 4.4
•桌面的改进,支持多个虚拟化桌面
可通过下列地址来下载此 Beta 版本:
http://www.redhat.com/rhel/beta/
RHEL6.0-AP-i386-DVD1.iso (3,650MB, SHA256)
RHEL6.0-20100414.0-AP-x86_64-DVD1.iso (4,105MB, SHA256).
Via RedHat Press
截图:
Apr
27
这里介绍的10个成功秘诀,可以接受时代变迁的考验,可以用在任何人身上,更可以与时推移,永不落伍。尽管它们不是立杆见影的妙药,但只要你身体力 行,定能改善你的生活方式。
1.必须先在内心深处感受到爱,然后才能爱其他的人。爱的定义有千万种。它是无条件的接受,也是无条件 的付出。爱是对善的追求,爱使人摆脱恐惧。有爱就能心生和谐,爱是自然无价的,它不是理论,也没有要求。既无分别,也无需衡量。爱是单纯的感情、无价的温 馨。找出恐惧生长的地方,用爱去松动它四周的土壤,然后播下自尊的种子,你会长成顶天立地的人。
2.我们的思想无法分辨真实的生活 经验和生动重复的幻想经验,因此,想象力和创造力便弥足珍贵。想象力具有一种耳濡目染的效果。而创造力则是最最珍贵。你有这种能力,能够把握生活最佳的时 机,缔造伟大的成绩。
3.人生的报酬决定于贡献的质与量,就一个整体的社会而言,我们同时在为维护个人自由和社会秩序而努力。我们 要求不受到伤害,同时却要求社会减少个人的干预。我们希望减税、冒险以及创造前途,同时又希望更多的金钱保证与安全,而且希望由政府提供。然而,事实上, 如果我们的希望得到某种事物,就必须事先先付出代价。
4.导致成功最重要的性向条件,是全世界百分之九十五的人无法了解应干哪一种 行业。因此了解自己的天赋的才能和潜力非常重要。如果不了解自己的才能,可能会破坏和打击你的整个事业生涯。但如果只是根据天赋才能的性向测验来决定我们 的事业前途,那真是危险而不负责任的作法。我们的终身事业是同时融合了天赋才能、环境背景、技术及生活经验的。而且无可否定,我们经常是根据经济需求及家 庭因素来决定所要从事的终身事业。
5.如此多的人无法达成他们的理想,其原因在于他们从来没有真正定下生活的目标。有了目标,内心 的力量才会找到方向。茫无目标的飘荡终归会迷路,而你心中那一座无价的金矿也因不开采而与平凡的尘土无异。
6.轻轻一抚, 胜过千言万语。爱就是保持接触,播下沟通的种子。我们原本是擦身而过的陌生人,但彼此伸出手来握住,便不再漠不相干了。我们冷淡是因为怕被拒绝,其实我们 容易了解,也容易相处。
7.生活是一种自我预言,你不一定要得到生活中所需要的,但到最后,我通常总能笪以你所期望的。
自我预言并不真实,也不虚伪。如果你信仰它,就会变成真实。信心的力量惊人,它能改变恶劣的现状,造成难以令人相信的圆满结果。充满信心的人永远击不 到,他们是人生的胜利者。
8.美好的古老时光就在眼前。所谓美好的古老时光就是现在。因为这才是我们生活的日子,也是我们在历史是 唯一生存的一段时间。这是属于我们的时光。它有美好的一面,也有悲惨的一面。生活中的变化是无法避免的。接受生命的逆境和失败,把阻挡前进的绊脚石当作踏 脚石,继续向生活的目标迈进。
9.成功者所从事的工作是绝大多数人所不愿去做的,生活中的失败者就是那些想赚大钱,想穿金戴玉,想 和富有的人一样到观光区去度假,想拥有权力,想当上隐士,却可以不付诸实际行动的人。成功者和失败者的区别在于有没有意志和毅力。没有任何事物可以取代毅 力、能力。天赋、教育都比不上毅力。坚持到底,你认为办得到,就会成功。
10.正确的观察力 从内心深处来观察生活,对我们每个人来说是最重要的。生命是不能收集的。幸福也不能单单从经验中获得。甚至不能拥有、赚取、穿用或消费。幸福是一种精神经 验:每一分钟都存在于爱、感恩与满足中。你不能去寻找成功。这个宝藏就在你内心,只须发觉并挖掘就行了。其秘诀就是把收集式的生活改成庆祝式的生活。
1.必须先在内心深处感受到爱,然后才能爱其他的人。爱的定义有千万种。它是无条件的接受,也是无条件 的付出。爱是对善的追求,爱使人摆脱恐惧。有爱就能心生和谐,爱是自然无价的,它不是理论,也没有要求。既无分别,也无需衡量。爱是单纯的感情、无价的温 馨。找出恐惧生长的地方,用爱去松动它四周的土壤,然后播下自尊的种子,你会长成顶天立地的人。
2.我们的思想无法分辨真实的生活 经验和生动重复的幻想经验,因此,想象力和创造力便弥足珍贵。想象力具有一种耳濡目染的效果。而创造力则是最最珍贵。你有这种能力,能够把握生活最佳的时 机,缔造伟大的成绩。
3.人生的报酬决定于贡献的质与量,就一个整体的社会而言,我们同时在为维护个人自由和社会秩序而努力。我们 要求不受到伤害,同时却要求社会减少个人的干预。我们希望减税、冒险以及创造前途,同时又希望更多的金钱保证与安全,而且希望由政府提供。然而,事实上, 如果我们的希望得到某种事物,就必须事先先付出代价。
4.导致成功最重要的性向条件,是全世界百分之九十五的人无法了解应干哪一种 行业。因此了解自己的天赋的才能和潜力非常重要。如果不了解自己的才能,可能会破坏和打击你的整个事业生涯。但如果只是根据天赋才能的性向测验来决定我们 的事业前途,那真是危险而不负责任的作法。我们的终身事业是同时融合了天赋才能、环境背景、技术及生活经验的。而且无可否定,我们经常是根据经济需求及家 庭因素来决定所要从事的终身事业。
5.如此多的人无法达成他们的理想,其原因在于他们从来没有真正定下生活的目标。有了目标,内心 的力量才会找到方向。茫无目标的飘荡终归会迷路,而你心中那一座无价的金矿也因不开采而与平凡的尘土无异。
6.轻轻一抚, 胜过千言万语。爱就是保持接触,播下沟通的种子。我们原本是擦身而过的陌生人,但彼此伸出手来握住,便不再漠不相干了。我们冷淡是因为怕被拒绝,其实我们 容易了解,也容易相处。
7.生活是一种自我预言,你不一定要得到生活中所需要的,但到最后,我通常总能笪以你所期望的。
自我预言并不真实,也不虚伪。如果你信仰它,就会变成真实。信心的力量惊人,它能改变恶劣的现状,造成难以令人相信的圆满结果。充满信心的人永远击不 到,他们是人生的胜利者。
8.美好的古老时光就在眼前。所谓美好的古老时光就是现在。因为这才是我们生活的日子,也是我们在历史是 唯一生存的一段时间。这是属于我们的时光。它有美好的一面,也有悲惨的一面。生活中的变化是无法避免的。接受生命的逆境和失败,把阻挡前进的绊脚石当作踏 脚石,继续向生活的目标迈进。
9.成功者所从事的工作是绝大多数人所不愿去做的,生活中的失败者就是那些想赚大钱,想穿金戴玉,想 和富有的人一样到观光区去度假,想拥有权力,想当上隐士,却可以不付诸实际行动的人。成功者和失败者的区别在于有没有意志和毅力。没有任何事物可以取代毅 力、能力。天赋、教育都比不上毅力。坚持到底,你认为办得到,就会成功。
10.正确的观察力 从内心深处来观察生活,对我们每个人来说是最重要的。生命是不能收集的。幸福也不能单单从经验中获得。甚至不能拥有、赚取、穿用或消费。幸福是一种精神经 验:每一分钟都存在于爱、感恩与满足中。你不能去寻找成功。这个宝藏就在你内心,只须发觉并挖掘就行了。其秘诀就是把收集式的生活改成庆祝式的生活。
Apr
27
1、父子二人经过五星级饭店门口,看到一辆十分豪华的进口轿车。儿子不屑地对他的父亲说:「坐这种车的人,肚子里一定没有学问!」父亲则轻描淡写地回 答:「说这种话的人,口袋里一定没有钱!」
(注:你对事情的看法,是不是也反映出你内心真正的态度?)
2、晚饭后,母亲和女儿一块儿 洗碗盘,父亲和儿子在客厅看电视。突然,厨房里传来打破盘子的响声,然后一片沉寂。是儿子望着他父亲,说道:「一定是妈妈打破的。」
「你怎么 知道?」」「她没有骂人。」
(注:我们习惯以不同的标准来看人看己,以致往往是责人以严,待己以宽。)
3、有两个台湾观光团 到日本伊豆半岛旅游,路况很坏,到处都是坑洞。其中一位导游连声抱歉,说路面简直像麻子一样。然而另一个导游却诗意盎然地对游客说:诸位先生女士,我们现 在走的这条道路,正是赫赫有名的伊豆迷人酒窝大道。」
(注:虽是同样的情况,然而不同的意念,就会产生不同的态度。思想是何等奇妙的事,如何 去想,决定权在你。)
4、同样是小学三年级的学生,在作文中说他们将来的志愿是当小丑。中国的老师斥之为:「胸无大志,孺子不可教 也!」带外国的老师则会说:「愿你把欢笑带给全世界!」
(注:身为长辈的我们,不但容易要求多于鼓励,更狭窄的界定了成功的定义。)
5、在故宫博物院中,有一个太太不耐烦地对她先生说:「我说你为甚么走得这么慢。原来你老是停下来看这些东西。」
(注:有人只知道在人生的 道路上狂奔,结果失去了观看两旁美丽花朵的机会。)
6、妻子正在厨房炒菜。丈夫在她旁边一直唠叨不停:慢些。小心!火太大了。赶快把 鱼翻过来。快铲起来,油放太多了!把豆腐整平一下!「哎厎」妻子脱口而出,「我懂得怎样炒菜。」「你当然懂,太太,」丈夫平静地答道:「我只是要让你知 道,我在开车时,你在旁边喋喋不休,我的感觉如何。」
(注:学会体谅他人并不困难,只要你愿意认真地站在对方的角度和立场看问题。)
7、理由充份
一辆载满乘客的公共汽车沿着下坡路快速前进着,有一个人後面紧紧地追赶着这辆车子。一个乘客从车窗中伸出头来对追车子的人说: “老兄!算啦,你追不上的!”
“我必须追上它,”这人气喘吁吁地说:“我是这辆车的司机!”
(注:有些人必须非常认真努力,因为 不这样的话,後果就十分悲惨了!然而也正因为必须全力以赴,潜在的本能和不为人知的特质终将充份展现出来。)
11、原来如此
甲:「新搬来的邻居好可恶,昨天晚上三更半夜、夜深人静之时突然跑来猛按我家的门铃。」
乙:「的确可恶!你有没有马上报警?」
甲:「没有。我当他们是疯子,继续吹我的小喇叭。」
(事出必有因,如果能先看到自己的不是,答案就会不一样在你面对冲突和争执时,先想一想是 否心中有亏,或许很快就能释怀了。)
12、误会
某日,张三在山间小路开车,正当他悠哉地欣赏美丽风景时,突然迎面开来一 辆货车,而且满囗黑牙的司机还摇下窗户对他大骂一声:“猪!”
张三越想越纳闷,也越想越气,於是他也摇下车窗回头大骂:“你才是猪!”
才刚骂完,他便迎头撞上一群过马路的猪。
(不要错误的诠释别人的好意,那只会让自己吃亏,并且使别人受辱。在不明所以之前,先学会按捺情 绪,耐心观察,以免事後生发悔意。)
13、後生可畏
小男孩问爸爸:“是不是做父亲的总比做儿子的知道得多?”
爸爸回答:“当然啦!”
小男孩问:“电灯是谁发明的?”
爸爸:“是爱迪生。”
小男孩又问:“那爱迪生的爸爸怎麽没 有发明电灯?”
(很奇怪,喜欢倚老卖老的人,特别容易栽跟斗。权威往往只是一个经不起考验的空壳子,尤其在现今这个多元开放的时代。)
14、不必紧张
小明洗澡时不小心吞下一小块肥皂,他的妈妈慌慌张张地打电话向家庭医生求助。医生说:“我现在还有几个病人在,可能要半小时 後才能赶过去。”
小明妈妈说:“在你来之前,我该做甚麽?”
医生说:“给小明喝一杯白开水,然後用力跳一跳,你就可以让小明用嘴 巴吹泡泡消磨时间了。”
(take it easy,放轻松放轻松些,生活何必太紧张?事情既然已经发生了,何不坦然自在的面对。担心不如宽心,穷紧张不如穷开心。)
15、钥 匙
一把坚实的大锁挂在大门上,一根铁杆费了九牛二虎之力,还是无法将它撬开。钥匙来了,他瘦小的身子钻进锁孔,只轻轻一转,大锁就“啪”地一 声打开了。
铁杆奇怪地问:“为什麽我费了那麽大力气也打不开,而你却轻而易举地就把它打开了呢?”
钥匙说:“因为我最了解他的 心。”
(每个人的心,都像上了锁的大门,任你再粗的铁棒也撬不开。唯有关怀,才能把自己变成一只细腻的钥匙,进入别人的心中,了解别人。)
(注:你对事情的看法,是不是也反映出你内心真正的态度?)
2、晚饭后,母亲和女儿一块儿 洗碗盘,父亲和儿子在客厅看电视。突然,厨房里传来打破盘子的响声,然后一片沉寂。是儿子望着他父亲,说道:「一定是妈妈打破的。」
「你怎么 知道?」」「她没有骂人。」
(注:我们习惯以不同的标准来看人看己,以致往往是责人以严,待己以宽。)
3、有两个台湾观光团 到日本伊豆半岛旅游,路况很坏,到处都是坑洞。其中一位导游连声抱歉,说路面简直像麻子一样。然而另一个导游却诗意盎然地对游客说:诸位先生女士,我们现 在走的这条道路,正是赫赫有名的伊豆迷人酒窝大道。」
(注:虽是同样的情况,然而不同的意念,就会产生不同的态度。思想是何等奇妙的事,如何 去想,决定权在你。)
4、同样是小学三年级的学生,在作文中说他们将来的志愿是当小丑。中国的老师斥之为:「胸无大志,孺子不可教 也!」带外国的老师则会说:「愿你把欢笑带给全世界!」
(注:身为长辈的我们,不但容易要求多于鼓励,更狭窄的界定了成功的定义。)
5、在故宫博物院中,有一个太太不耐烦地对她先生说:「我说你为甚么走得这么慢。原来你老是停下来看这些东西。」
(注:有人只知道在人生的 道路上狂奔,结果失去了观看两旁美丽花朵的机会。)
6、妻子正在厨房炒菜。丈夫在她旁边一直唠叨不停:慢些。小心!火太大了。赶快把 鱼翻过来。快铲起来,油放太多了!把豆腐整平一下!「哎厎」妻子脱口而出,「我懂得怎样炒菜。」「你当然懂,太太,」丈夫平静地答道:「我只是要让你知 道,我在开车时,你在旁边喋喋不休,我的感觉如何。」
(注:学会体谅他人并不困难,只要你愿意认真地站在对方的角度和立场看问题。)
7、理由充份
一辆载满乘客的公共汽车沿着下坡路快速前进着,有一个人後面紧紧地追赶着这辆车子。一个乘客从车窗中伸出头来对追车子的人说: “老兄!算啦,你追不上的!”
“我必须追上它,”这人气喘吁吁地说:“我是这辆车的司机!”
(注:有些人必须非常认真努力,因为 不这样的话,後果就十分悲惨了!然而也正因为必须全力以赴,潜在的本能和不为人知的特质终将充份展现出来。)
11、原来如此
甲:「新搬来的邻居好可恶,昨天晚上三更半夜、夜深人静之时突然跑来猛按我家的门铃。」
乙:「的确可恶!你有没有马上报警?」
甲:「没有。我当他们是疯子,继续吹我的小喇叭。」
(事出必有因,如果能先看到自己的不是,答案就会不一样在你面对冲突和争执时,先想一想是 否心中有亏,或许很快就能释怀了。)
12、误会
某日,张三在山间小路开车,正当他悠哉地欣赏美丽风景时,突然迎面开来一 辆货车,而且满囗黑牙的司机还摇下窗户对他大骂一声:“猪!”
张三越想越纳闷,也越想越气,於是他也摇下车窗回头大骂:“你才是猪!”
才刚骂完,他便迎头撞上一群过马路的猪。
(不要错误的诠释别人的好意,那只会让自己吃亏,并且使别人受辱。在不明所以之前,先学会按捺情 绪,耐心观察,以免事後生发悔意。)
13、後生可畏
小男孩问爸爸:“是不是做父亲的总比做儿子的知道得多?”
爸爸回答:“当然啦!”
小男孩问:“电灯是谁发明的?”
爸爸:“是爱迪生。”
小男孩又问:“那爱迪生的爸爸怎麽没 有发明电灯?”
(很奇怪,喜欢倚老卖老的人,特别容易栽跟斗。权威往往只是一个经不起考验的空壳子,尤其在现今这个多元开放的时代。)
14、不必紧张
小明洗澡时不小心吞下一小块肥皂,他的妈妈慌慌张张地打电话向家庭医生求助。医生说:“我现在还有几个病人在,可能要半小时 後才能赶过去。”
小明妈妈说:“在你来之前,我该做甚麽?”
医生说:“给小明喝一杯白开水,然後用力跳一跳,你就可以让小明用嘴 巴吹泡泡消磨时间了。”
(take it easy,放轻松放轻松些,生活何必太紧张?事情既然已经发生了,何不坦然自在的面对。担心不如宽心,穷紧张不如穷开心。)
15、钥 匙
一把坚实的大锁挂在大门上,一根铁杆费了九牛二虎之力,还是无法将它撬开。钥匙来了,他瘦小的身子钻进锁孔,只轻轻一转,大锁就“啪”地一 声打开了。
铁杆奇怪地问:“为什麽我费了那麽大力气也打不开,而你却轻而易举地就把它打开了呢?”
钥匙说:“因为我最了解他的 心。”
(每个人的心,都像上了锁的大门,任你再粗的铁棒也撬不开。唯有关怀,才能把自己变成一只细腻的钥匙,进入别人的心中,了解别人。)