2013年03月06日

CentOS用yum安装软件是非常方便的,有时,我们只需要下载其中的rpm包,而不直接安装时咋办呢? 一般情况下,yum是不提供只下载的功能的。
yum install后的下载文件存放在哪?
一般情况下,yum install安装软件后rpm包存放在/var/cache/yum/下。如
/var/cache/yum/i386/6/updates/packages/openssl-1.0.0-4.el6_0.2.i686.rpm
/var/cache/yum/i386/6/updates/packages/openssl-devel-1.0.0-4.el6_0.2.i686.rpm
用yum只下载rpm包
这个方法是从Blinux童鞋处学来的。下载yum源中的rpm包的方法就是,安装yum-utils,直接用yumdownloader 就可以直接下载yum源中的rpm包.
yum -y install yum-utils
接着用yumdownloader就能下载rpm包了。简单快捷啊。
yumdownloader ncftp
当前目录就会有ncftp的rpm包了。
rpm强制安装
有时用yum自动安装会不成功时,就可以下载该rpm包后,再强制安装。如
rpm -ivh openssl-1.0.0-4.el6_0.2.i686.rpm –force –nodeps

2011年11月10日
sudo dpkg -i file_name.deb

#3 If any dependency error occurs then run the following command(s)

sudo apt-get -f install
2010年11月08日

nmap是一个网络探测和安全扫描程序, 系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息。nmap支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、ACK扫描、圣诞树(Xmas Tree)、SYN扫描和null扫描。从扫描类型一节可以得到细节。nmap还提供了一些高级的特征,例如:通过TCP/IP协议栈特征探测操作系统类 型,秘密扫描,动态延时和重传计算,并行扫描,通过并行ping扫描探测关闭的主机,诱饵扫描,避开端口过滤检测,直接RPC扫描(无须端口影射),碎片 扫描,以及灵活的目标和端口设定.
——————————————————————————–

1.名称

nmap-网络探测和安全扫描工具

2.语法

nmap [Scan Type(s)] [Options]

3.描述

nmap是一个网络探测和安全扫描程 序,系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息。nmap支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、ACK扫描、圣诞树(Xmas Tree)、SYN扫描和null扫描。从扫描类型一节可以得到细节。nmap还提供了一些高级的特征,例如:通过TCP/IP协议栈特征探测操作系统类 型,秘密扫描,动态延时和重传计算,并行扫描,通过并行ping扫描探测关闭的主机,诱饵扫描,避开端口过滤检测,直接RPC扫描(无须端口影射),碎片 扫描,以及灵活的目标和端口设定。

为了提高nmap在non-root状态下的性能,软件的设计者付出了很大的努力。很不幸,一些内核界面(例如raw socket)需要在root状态下使用。所以应该尽可能在root使用nmap。

nmap运行通常会得到被扫描主机端 口的列表。nmap总会给出well known端口的服务名(如果可能)、端口号、状态和协议等信息。每个端口的状态有:open、filtered、unfiltered。open状态意 味着目标主机能够在这个端口使用accept()系统调用接受连接。filtered状态表示:防火墙、包过滤和其它的网络安全软件掩盖了这个端口,禁止 nmap探测其是否打开。unfiltered表示:这个端口关闭,并且没有防火墙/包过滤软件来隔离nmap的探测企图。通常情况下,端口的状态基本都 是unfiltered状态,只有在大多数被扫描的端口处于filtered状态下,才会显示处于unfiltered状态的端口。

根据使用的功能选项,nmap也可以报告远程主机的下列特征:使用的操作系统、TCP序列、运行绑定到每个端口上的应用程序的用户名、DNS名、主机地址是否是欺骗地址、以及其它一些东西。

4.功能选项

功能选项可以组合使用。一些功能选项只能够在某种扫描模式下使用。nmap会自动识别无效或者不支持的功能选项组合,并向用户发出警告信息。

如果你是有经验的用户,可以略过结尾的示例一节。可以使用nmap -h快速列出功能选项的列表。

4.1 扫描类型

-sT
TCP connect()扫描:这是最基本的TCP扫描方式。connect()是一种系统调用,由操作系统提供,用来打开一个连接。如果目标端口有程序监听, connect()就会成功返回,否则这个端口是不可达的。这项技术最大的优点是,你勿需root权限。任何UNIX用户都可以自由使用这个系统调用。这 种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息。
-sS
TCP同步扫描(TCP SYN):因为不必全部打开一个TCP连接,所以这项技术通常称为半开扫描(half-open)。你可以发出一个TCP同步包(SYN),然后等待回 应。如果对方返回SYN|ACK(响应)包就表示目标端口正在监听;如果返回RST数据包,就表示目标端口没有监听程序;如果收到一个SYN|ACK包, 源主机就会马上发出一个RST(复位)数据包断开和目标主机的连接,这实际上有我们的操作系统内核自动完成的。这项技术最大的好处是,很少有系统能够把这 记入系统日志。不过,你需要root权限来定制SYN数据包。
-sF -sF -sN
秘密FIN数据包扫描、圣诞树 (Xmas Tree)、空(Null)扫描模式:即使SYN扫描都无法确定的情况下使用。一些防火墙和包过滤软件能够对发送到被限制端口的SYN数据包进行监视,而 且有些程序比如synlogger和courtney能够检测那些扫描。这些高级的扫描方式可以逃过这些干扰。这些扫描方式的理论依据是:关闭的端口需要 对你的探测包回应RST包,而打开的端口必需忽略有问题的包(参考RFC 793第64页)。FIN扫描使用暴露的FIN数据包来探测,而圣诞树扫描打开数据包的FIN、URG和PUSH标志。不幸的是,微软决定完全忽略这个标 准,另起炉灶。所以这种扫描方式对Windows95/NT无效。不过,从另外的角度讲,可以使用这种方式来分别两种不同的平台。如果使用这种扫描方式可 以发现打开的端口,你就可以确定目标注意运行的不是Windows系统。如果使用-sF、-sX或者-sN扫描显示所有的端口都是关闭的,而使用SYN扫 描显示有打开的端口,你可以确定目标主机可能运行的是Windwos系统。现在这种方式没有什么太大的用处,因为nmap有内嵌的操作系统检测功能。还有 其它几个系统使用和windows同样的处理方式,包括Cisco、BSDI、HP/UX、MYS、IRIX。在应该抛弃数据包时,以上这些系统都会从打 开的端口发出复位数据包。
-sP
ping扫描:有时你只是想知道此时网络上哪些主机正在运行。通过向你指定的网络内的每个 IP地址发送ICMP echo请求数据包,nmap就可以完成这项任务。如果主机正在运行就会作出响应。不幸的是,一些站点例如:microsoft.com阻塞ICMP echo请求数据包。然而,在默认的情况下nmap也能够向80端口发送TCP ack包,如果你收到一个RST包,就表示主机正在运行。nmap使用的第三种技术是:发送一个SYN包,然后等待一个RST或者SYN/ACK包。对于 非root用户,nmap使用connect()方法。
在默认的情况下(root用户),nmap并行使用ICMP和ACK技术。
注意,nmap在任何情况下都会进行ping扫描,只有目标主机处于运行状态,才会进行后续的扫描。如果你只是想知道目标主机是否运行,而不想进行其它扫描,才会用到这个选项。
-sU
UDP扫描:如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务,可以使用这种扫描方法。nmap首先向目标主机的每个端口发出一个0字节的UDP包,如果我们收到端口不可达的ICMP消息,端口就是关闭的,否则我们就假设它是打开的。
有些人可能会想UDP扫描是没有什么意思的。但是,我经常会想到最近出现的solaris rpcbind缺陷。rpcbind隐藏在一个未公开的UDP端口上,这个端口号大于32770。所以即使端口111(portmap的众所周知端口号) 被防火墙阻塞有关系。但是你能发现大于30000的哪个端口上有程序正在监听吗?使用UDP扫描就能!cDc Back Orifice的后门程序就隐藏在Windows主机的一个可配置的UDP端口中。不考虑一些通常的安全缺陷,一些服务例如:snmp、tftp、NFS 使用UDP协议。不幸的是,UDP扫描有时非常缓慢,因为大多数主机限制ICMP错误信息的比例(在RFC1812中的建议)。例如,在Linux内核中 (在net/ipv4/icmp.h文件中)限制每4秒钟只能出现80条目标不可达的ICMP消息,如果超过这个比例,就会给1/4秒钟的处罚。 solaris的限制更加严格,每秒钟只允许出现大约2条ICMP不可达消息,这样,使扫描更加缓慢。nmap会检测这个限制的比例,减缓发送速度,而不 是发送大量的将被目标主机丢弃的无用数据包。
不过Micro$oft忽略了RFC1812的这个建议,不对这个比例做任何的限制。所以我们可以能够快速扫描运行Win95/NT的主机上的所有65K个端口。
-sA
ACK扫描:这项高级的扫描方法通常用来穿过防火墙的规则集。通常情况下,这有助于确定一个防火墙是功能比较完善的或者是一个简单的包过滤程序,只是阻塞进入的SYN包。
这种扫描是向特定的端口发送ACK包(使用随机的应答/序列号)。如果返回一个RST包,这个端口就标记为unfiltered状态。如果什么都没有返 回,或者返回一个不可达ICMP消息,这个端口就归入filtered类。注意,nmap通常不输出unfiltered的端口,所以在输出中通常不显示 所有被探测的端口。显然,这种扫描方式不能找出处于打开状态的端口。
-sW
对滑动窗口的扫描:这项高级扫描技术非常类似于 ACK扫描,除了它有时可以检测到处于打开状态的端口,因为滑动窗口的大小是不规则的,有些操作系统可以报告其大小。这些系统至少包括:某些版本的 AIX、Amiga、BeOS、BSDI、Cray、Tru64 UNIX、DG/UX、OpenVMS、Digital UNIX、OpenBSD、OpenStep、QNX、Rhapsody、SunOS 4.x、Ultrix、VAX、VXWORKS。从nmap-hackers邮件3列表的文档中可以得到完整的列表。
-sR
RPC扫描。这种方法和nmap的其它不同的端口扫描方法结合使用。选择所有处于打开状态的端口向它们发出SunRPC程序的NULL命令,以确定它们 是否是RPC端口,如果是,就确定是哪种软件及其版本号。因此你能够获得防火墙的一些信息。诱饵扫描现在还不能和RPC扫描结合使用。
-b
FTP反弹攻击(bounce attack):FTP协议(RFC 959)有一个很有意思的特征,它支持代理FTP连接。也就是说,我能够从evil.com连接到FTP服务器target.com,并且可以要求这台 FTP服务器为自己发送Internet上任何地方的文件!1985年,RFC959完成时,这个特征就能很好地工作了。然而,在今天的Internet 中,我们不能让人们劫持FTP服务器,让它向Internet上的任意节点发送数据。如同Hobbit在1995年写的文章中所说的,这个协议”能够用来 做投递虚拟的不可达邮件和新闻,进入各种站点的服务器,填满硬盘,跳过防火墙,以及其它的骚扰活动,而且很难进行追踪”。我们可以使用这个特征,在一台代 理FTP服务器扫描TCP端口。因此,你需要连接到防火墙后面的一台FTP服务器,接着进行端口扫描。如果在这台FTP服务器中有可读写的目录,你还可以 向目标端口任意发送数据(不过nmap不能为你做这些)。
传递给-b功能选项的参数是你要作为代理的FTP服务器。语法格式为:
-b username:password@server:port。
除了server以外,其余都是可选的。如果你想知道什么服务器有这种缺陷,可以参考我在Phrack 51发表的文章。还可以在nmap的站点得到这篇文章的最新版本。

4.2 通用选项

这些内容不是必需的,但是很有用。

-P0
在扫描之前,不必ping主机。有些网络的防火墙不允许ICMP echo请求穿过,使用这个选项可以对这些网络进行扫描。microsoft.com就是一个例子,因此在扫描这个站点时,你应该一直使用-P0或者-PT 80选项。
-PT
扫描之前,使用TCP ping确定哪些主机正在运行。nmap不是通过发送ICMP echo请求包然后等待响应来实现这种功能,而是向目标网络(或者单一主机)发出TCP ACK包然后等待回应。如果主机正在运行就会返回RST包。只有在目标网络/主机阻塞了ping包,而仍旧允许你对其进行扫描时,这个选项才有效。对于非 root用户,我们使用connect()系统调用来实现这项功能。使用-PT <端口号>来设定目标端口。默认的端口号是80,因为这个端口通常不会被过滤。
-PS
对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描。如果主机正在运行就返回一个RST包(或者一个SYN/ACK包)。
-PI
设置这个选项,让nmap使用真正的ping(ICMP echo请求)来扫描目标主机是否正在运行。使用这个选项让nmap发现正在运行的主机的同时,nmap也会对你的直接子网广播地址进行观察。直接子网广 播地址一些外部可达的IP地址,把外部的包转换为一个内向的IP广播包,向一个计算机子网发送。这些IP广播包应该删除,因为会造成拒绝服务攻击(例如 smurf)。
-PB
这是默认的ping扫描选项。它使用ACK(-PT)和ICMP(-PI)两种扫描类型并行扫描。如果防火墙能够过滤其中一种包,使用这种方法,你就能够穿过防火墙。
-O
这个选项激活对TCP/IP指纹特征(fingerprinting)的扫描,获得远程主机的标志。换句话说,nmap使用一些技术检测目标主机操作系 统网络协议栈的特征。nmap使用这些信息建立远程主机的指纹特征,把它和已知的操作系统指纹特征数据库做比较,就可以知道目标主机操作系统的类型。
-I
这个选项打开nmap的反向标志扫描功能。Dave Goldsmith 1996年向bugtap发出的邮件注意到这个协议,ident协议(rfc 1413)允许使用TCP连接给出任何进程拥有者的用户名,即使这个进程并没有初始化连接。例如,你可以连接到HTTP端口,接着使用identd确定这 个服务器是否由root用户运行。这种扫描只能在同目标端口建立完全的TCP连接时(例如:-sT扫描选项)才能成功。使用-I选项是,远程主机的 identd精灵进程就会查询在每个打开的端口上监听的进程的拥有者。显然,如果远程主机没有运行identd程序,这种扫描方法无效。
-f
这个选项使nmap使用碎片IP数据包发送SYN、FIN、XMAS、NULL。使用碎片数据包增加包过滤、入侵检测系统的难度,使其无法知道你的企 图。不过,要慎重使用这个选项!有些程序在处理这些碎片包时会有麻烦,我最喜欢的嗅探器在接受到碎片包的头36个字节时,就会发生 segmentation faulted。因此,在nmap中使用了24个字节的碎片数据包。虽然包过滤器和防火墙不能防这种方法,但是有很多网络出于性能上的考虑,禁止数据包的 分片。
注意这个选项不能在所有的平台上使用。它在Linux、FreeBSD、OpenBSD以及其它一些UNIX系统能够很好工作。
-v
冗余模式。强烈推荐使用这个选项,它会给出扫描过程中的详细信息。使用这个选项,你可以得到事半功倍的效果。使用-d选项可以得到更加详细的信息。
-h
快速参考选项。
-oN
把扫描结果重定向到一个可读的文件logfilename中。
-oM
把扫描结果重定向到logfilename文件中,这个文件使用主机可以解析的语法。你可以使用-oM -来代替logfilename,这样输出就被重定向到标准输出stdout。在这种情况下,正常的输出将被覆盖,错误信息荏苒可以输出到标准错误 std

err。要注意,如果同时使用了-v选项,在屏幕上会打印出其它的信息。
-oS    thIs l0gz th3 r3suLtS of YouR ScanZ iN a s|   THe fiL3 U sPecfy 4s an arGuMEnT! U kAn gIv3 the 4rgument -
(wItHOUt qUOteZ) to sh00t output iNT0 stDouT!@!! 莫名其妙,下面是我猜着翻译的,相形字?
把扫描结果重定向到一个文件logfilename中,这个文件使用一种”黑客方言”的语法形式(作者开的玩笑?)。同样,使用-oS -就会把结果重定向到标准输出上。
-resume
某个网络扫描可能由于control-C或者网络损失等原因被中断,使用这个选项可以使扫描接着以前的扫描进行。logfilename是被取消扫描的 日志文件,它必须是可读形式或者机器可以解析的形式。而且接着进行的扫描不能增加新的选项,只能使用与被中断的扫描相同的选项。nmap会接着日志文件中 的最后一次成功扫描进行新的扫描。
-iL
从inputfilename文件中读取扫描的目标。在这个文件中要有一个主机或者网络的列表,由空格键、制表键或者回车键作为分割符。如果使用-iL -,nmap就会从标准输入stdin读取主机名字。你可以从指定目标一节得到更加详细的信息。
-iR
让nmap自己随机挑选主机进行扫描。
-p <端口范围>
这个选项让你选择要进行扫描的端口号的范围。例如,-p 23表示:只扫描目标主机的23号端口。-p 20-30,139,60000-表示:扫描20到30号端口,139号端口以及所有大于60000的端口。在默认情况下,nmap扫描从1到1024号 以及nmap-services文件(如果使用RPM软件包,一般在/usr/share/nmap/目录中)中定义的端口列表。
-F
快速扫描模式,只扫描在nmap-services文件中列出的端口。显然比扫描所有65535个端口要快。
-D
使用诱饵扫描方法对目标网络/主机进行扫描。如果nmap使用这种方法对目标网络进行扫描,那么从目标主机/网络的角度来看,扫描就象从其它主机 (decoy1,等)发出的。从而,即使目标主机的IDS(入侵检测系统)对端口扫描发出报警,它们也不可能知道哪个是真正发起扫描的地址,哪个是无辜 的。这种扫描方法可以有效地对付例如路由跟踪、response-dropping等积极的防御机制,能够很好地隐藏你的IP地址。
每个 诱饵主机名使用逗号分割开,你也可以使用ME选项,它代表你自己的主机,和诱饵主机名混杂在一起。如果你把ME放在第六或者更靠后的位置,一些端口扫描检 测软件几乎根本不会显示你的IP地址。如果你不使用ME选项,nmap会把你的IP地址随机夹杂在诱饵主机之中。
注意:你用来作为诱饵的 主机应该正在运行或者你只是偶尔向目标发送SYN数据包。很显然,如果在网络上只有一台主机运行,目标将很轻松就会确定是哪台主机进行的扫描。或许,你还 要直接使用诱饵的IP地址而不是其域名,这样诱饵网络的域名服务器的日志上就不会留下关于你的记录。
还要注意:一些愚蠢的端口扫描检测软件会拒绝路由试图进行端口扫描的主机。因而,你需要让目标主机和一些诱饵断开连接。如果诱饵是目标主机的网关或者就是其自己时,会给目标主机造成很大问题。所以你需要慎重使用这个选项。
诱饵扫描既可以在起始的ping扫描也可以在真正的扫描状态下使用。它也可以和-O选项组合使用。
使用太多的诱饵扫描能够减缓你的扫描速度甚至可能造成扫描结果不正确。同时,有些ISP会把你的欺骗包过滤掉。虽然现在大多数的ISP不会对此进行限制。
-S <IP_Address>
在一些情况下,nmap可能无法确定你的源地址(nmap会告诉你)。在这种情况使用这个选项给出你的IP地址。
在欺骗扫描时,也使用这个选项。使用这个选项可以让目标认为是其它的主机对自己进行扫描。
-e
告诉nmap使用哪个接口发送和接受数据包。nmap能够自动对此接口进行检测,如果无效就会告诉你。
-g
设置扫描的源端口。一些天真的防火墙和包过滤器的规则集允许源端口为DNS(53)或者FTP-DATA(20)的包通过和实现连接。显然,如果攻击者 把源端口修改为20或者53,就可以摧毁防火墙的防护。在使用UDP扫描时,先使用53号端口;使用TCP扫描时,先使用20号端口。注意只有在能够使用 这个端口进行扫描时,nmap才会使用这个端口。例如,如果你无法进行TCP扫描,nmap会自动改变源端口,即使你使用了-g选项。
对于一些扫描,使用这个选项会造成性能上的微小损失,因为我有时会保存关于特定源端口的一些有用的信息。
-r
告诉nmap不要打乱被扫描端口的顺序。
–randomize_hosts
使nmap在扫描之前,打乱每组扫描中的主机顺序,nmap每组可以扫描最多2048台主机。这样,可以使扫描更不容易被网络监视器发现,尤其和–scan_delay 选项组合使用,更能有效避免被发现。
-M
设置进行TCP connect()扫描时,最多使用多少个套接字进行并行的扫描。使用这个选项可以降低扫描速度,避免远程目标宕机。

4.3 适时选项

通常,nmap在运行时,能够很好地根据网络特点进行调整。扫描时,nmap会尽量减少被目标检测到的机会,同时尽可能加快扫描速度。然而,nmap默认的适时策略有时候不太适合你的目标。使用下面这些选项,可以控制nmap的扫描timing:

-T
设置nmap的适时策略。Paranoid:为了避开IDS的检测使扫描速度极慢,nmap串行所有的扫描,每隔至少5分钟发送 一个包; Sneaky:也差不多,只是数据包的发送间隔是15秒;Polite:不增加太大的网络负载,避免宕掉目标主机,串行每个探测,并且使每个探测有0.4 秒种的间隔;Normal:nmap默认的选项,在不是网络过载或者主机/端口丢失的情况下尽可能快速地扫描;Aggressive:设置5分钟的超时限 制,使对每台主机的扫描时间不超过5分钟,并且使对每次探测回应的等待时间不超过1.5秒钟;b>Insane:只适合快速的网络或者你不在意丢失 某些信息,每台主机的超时限制是75秒,对每次探测只等待0.3秒钟。你也可是使用数字来代替这些模式,例如:-T 0等于-T Paranoid,-T 5等于-T Insane。
这些适时模式不能下面的适时选项组合使用。
–host_timeout
设置扫描一台主机的时间,以毫秒为单位。默认的情况下,没有超时限制。
–max_rtt_timeout
设置对每次探测的等待时间,以毫秒为单位。如果超过这个时间限制就重传或者超时。默认值是大约9000毫秒。
–min_rtt_timeout
当目标主机的响应很快时,nmap就缩短每次探测的超时时间。这样会提高扫描的速度,但是可能丢失某些响应时间比较长的包。使用这个选项,可以让nmap对每次探测至少等待你指定的时间,以毫秒为单位。
–initial_rtt_timeout
设置初始探测的超时值。一般这个选项只在使用-P0选项扫描有防火墙保护的主机才有用。默认值是6000毫秒。
–max_parallelism
设置最大的并行扫描数量。–max_parallelism 1表示同时只扫描一个端口。这个选项对其它的并行扫描也有效,例如ping sweep, RPC scan。
–scan_delay
设置在两次探测之间,nmap必须等待的时间。这个选项主要用于降低网络的负载。

4.4 目标设定

在nmap的所有参数中,只有目标参数是必须给出的。其最简单的形式是在命令行直接输入一个主机名或者一个IP地址。如果你希望扫描某个IP地 址的一个子网,你可以在主机名或者IP地址的后面加上/掩码。掩码在0(扫描整个网络)到32(只扫描这个主机)。使用/24扫描C类地址,/16扫描B 类地址。

除此之外,nmap还有更加强大的表示方式让你更加灵活地指定IP地址。例如,如果要扫描这个B类网络128.210.*.*,你可以使用下面 三种方式来指定这些地址:128.210.*.*、128.21-.0-255.0-255或者128.210.0.0/16这三种形式是等价的。

5.例子

本节将由浅入深地举例说明如何使用nmap。

nmap -v target.example.com
扫描主机target.example.com的所有TCP端口。-v打开冗余模式。

nmap -sS -O target.example.com/24
发起对target.example.com所在网络上的所有255个IP地址的秘密SYN扫描。同时还探测每台主机操作系统的指纹特征。需要root权限。

nmap -sX -p 22,53,110,143,4564 128.210.*.1-127
对B类IP地址128.210中255个可能的8位子网的前半部分发起圣诞树扫描。确定这些系统是否打开了sshd、DNS、pop3d、imapd和4564端口。注意圣诞树扫描对Micro$oft的系统无效,因为其协议栈的TCP层有缺陷。

nmap -v –randomize_hosts -p 80 *.*.2.3-5
只扫描指定的IP范围,有时用于对这个 Internet进行取样分析。nmap将寻找Internet上所有后两个字节是.2.3、.2.4、.2.5的 IP地址上的WEB服务器。如果你想发现更多有意思的主机,你可以使用127-222,因为在这个范围内有意思的主机密度更大。

host -l company.com | cut -d -f 4 | ./nmap -v -iL -
列出company.com网络的所有主机,让nmap进行扫描。注意:这项命令在GNU/Linux下使用。如果在其它平台,你可能要使用 其它的命令/选项

2010年07月02日

CheckInstall能跟踪由“make install”或类似命令安装的所有文件,并为这些文件创建Slackware、RPM或者Debian安装包,然后把它添加到已安装软件包数据库中, 以便能简便的卸载或发布安装包。
attachment:IconsPage/IconTip.png 使用CheckInstall而不是仅仅运行”sudo make install”,因为那多半会把文件放在文件系统的很多地方,万一出错了可没有容易的方法删除它们。如果在将来你试图安装一个含有和你现在编译的文件相 同的文件的软件包,你将收到出错消息,你编译好的软件可能停止工作。

[编辑] 安装

sudo apt-get install checkinstall

[编辑] 使用

你将使用 sudo checkinstall 代替 sudo make install 。

The installed package can then also easily be removed via synapticor

那安装了的软件包之后也可通过 新立得 (synaptic) 或用下列语句很容易地卸载。

sudo dpkg -r packagename

[编辑] 通过 auto-apt 使用 CheckInstall

当你想用 checkinstall 从源码建立一个简单的软件包,你可以使用 auto-apt 。你需要安装 auto-apt !

代替:

/configure

你可使用:

auto-apt run ./configure

如果有可用的依赖包,会弹出一个对话框,让你安装他们。

接着的步骤就一样了:

make
sudo checkinstall

attachment:IconsPage/IconWarning3.png Blog Rabais 反馈了一些麻烦:

他用 有几个依赖包的Swftools 来测试。avi2swf 不能正确编译,他不得不卸载所有 avifile 的依赖包,手动从编译程序删除 avi2swf。

2010年06月29日

This is a small personal cheat sheet for encoding audio/video encoding where I put some of my most used stuff with FFmpeg and other tools. I use H.264 and AAC on MP4, M4V or MKV container most of the time.

If you have any question just contact me.

Video Size and Aspect Ratios

iPhone:

Name Size Aspect
Wide 16:9 480×270 4:3
Old TV 4:3 427×320 16:9
Wide 16:9 /16 480×272 480:272
Old TV 4:3 /16 432×320 432:320

DV NTSC Video

Name Size Aspect
Wide 16:9 720×480 16:9
Old TV 4:3 720×480 4:3

Youtube and Vimeo Upload

Name Size Aspect
SD 4:3 640:480 4:3
HD 16:9 1280×720 16:9

HD, Blu-Ray, AVCHD

Name Size Aspect
720p 1280×720 16:9
1080p/i Anamorphic 1440×1080 16:9
1080p/i 1920×1080 16:9

Frame Rates

Name Standard Fps FFmpeg
Movies NTSC 23.976 24000/1001
Movies QuickTime N/A 29.976 10000000/417083
TV Video NTSC 29.97 30000/1001
Movies PAL 25 25
TV Video PAL 30 30

FFmpeg Encoding

X264 Presets

default fastfirstpass lossless_ultrafast lossless_slower
baseline slowfirstpass lossless_fast lossless_max
normal hq lossless_medium ipod320
main max lossless_slow ipod640

High quality 2 Pass

ffmpeg -y -i INPUT -r 30000/1001 -b 2M -bt 4M -vcodec libx264 -pass 1 -vpre fastfirstpass -an output.mp4
ffmpeg -y -i INPUT -r 30000/1001 -b 2M -bt 4M -vcodec libx264 -pass 2 -vpre hq -acodec libfaac -ac 2 -ar 48000 -ab 192k output.mp4

iPod-iPhone 320 width

ffmpeg -i INPUT -s 320×240 -r 30000/1001 -b 200k -bt 240k -vcodec libx264 -vpre ipod320 -acodec libfaac -ac 2 -ar 48000 -ab 192k output.mp4

iPod-iPhone 640 width

ffmpeg -i INPUT -s 640×480 -r 30000/1001 -b 200k -bt 240k -vcodec libx264 -vpre ipod640 -acodec libfaac -ac 2 -ar 48000 -ab 192k output.mp4

Hight quality, 2 pass without presset

ffmpeg -y -i input -r 24000/1001 -b 6144k -bt 8192k -vcodec libx264 -pass 1 -flags +loop -me_method dia -g 250 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -bf 16 -b_strategy 1 -i_qfactor 0.71 -cmp +chroma -subq 1 -me_range 16 -coder 1 -sc_threshold 40 -flags2 -bpyramid-wpred-mixed_refs-dct8×8+fastpskip -keyint_min 25 -refs 1 -trellis 0 -directpred 1 -partitions -parti8×8-parti4×4-partp8×8-partp4×4-partb8×8-an output.mp4

ffmpeg -y -i input -r 24000/1001 -b 6144k -bt 8192k -vcodec libx264 -pass 2 -flags +loop -me_method umh -g 250 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -bf 16 -b_strategy 1 -i_qfactor 0.71 -cmp +chroma -subq 8 -me_range 16 -coder 1 -sc_threshold 40 -flags2 +bpyramid+wpred+mixed_refs+dct8×8+fastpskip -keyint_min 25 -refs 4 -trellis 1 -directpred 3 -partitions +parti8×8+parti4×4+partp8×8+partb8×8-acodec libfaac -ac 2 -ar 44100 -ab 128k output.mp4

iPod-iPhone 320 width, without presset

ffmpeg -i INPUT -s 320×240 -r 30000/1001 -b 200k -bt 240k -vcodec libx264 -coder 0 -bf 0 -flags2 -wpred-dct8×8 -level 13 -maxrate 768k -bufsize 3M-acodec libfaac -ac 2 -ar 48000 -ab 192k output.mp4

iPod-iPhone 640 width, without presset

ffmpeg -i INPUT -s 320×240 -r 30000/1001 -b 200k -bt 240k -vcodec libx264 coder 0 -bf 0 -refs 1 -flags2 -wpred-dct8×8 -level 30 -maxrate 10M -bufsize 10M-acodec libfaac -ac 2 -ar 48000 -ab 192k output.mp4

iPod-iPhone, 2 pass custom

ffmpeg -y -i input -r 30000/1001 -s 480×272 -aspect 480:272 -vcodec libx264 -b 512k -bt 1024k -maxrate 4M -flags +loop -cmp +chroma -me_range 16 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -rc_eq “blurCplx^(1-qComp)” -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -coder 0 -refs 1 -bufsize 4M -level 21 -partitions parti4×4+partp8×8+partb8×8 -subq 5 -f mp4 -pass 1 -an -title “Title” output.mp4

ffmpeg -y -i input -r 30000/1001 -s 480×272 -aspect 480:272 -vcodec libx264 -b 512k -bt 1024k -maxrate 4M -flags +loop -cmp +chroma -me_range 16 -g 300 keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -rc_eq “blurCplx^(1-qComp)” -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -coder 0 -refs 1 -bufsize 4M -level 21 -partitions parti4×4+partp8×8+partb8×8 -subq 5 -f mp4 -pass 2 -acodec libfaac -ac 2 -ar 44100 -ab 128k -title “Title” output.mp4

DV Video

To DV

ffmpeg -i input -target ntsc-dv -aspect 4:3 -y output.dv

From DV To Microsoft AVI DV

ffmpeg -i input.dv -vcodec copy -vtag dvsd -acodec pcm_s16le -f avi -aspect 4:3 -y output.avi

Audio

AAC Stereo HQ

-acodec libfaac -ac 2 -ar 48000 -ab 192k

AAC Stereo SQ

-acodec libfaac -ac 2 -ar 44100 -ab 128k

AAC 5.1 HQ

-acodec libfaac -ac 6 -ar 48000 -ab 448k

AAC 5.1 LQ

-acodec libfaac -ac 6 -ar 44100 -ab 224k

AAC to AC3 (Recomended use AviSynth for channel mapping)

ffmpeg -i intput.aac -vn -acodec ac3 -ac 6 -ar 48000 -ab 448k

AC3 to M4V (Mux to be opened and edited in other appz)

ffmpeg -i input.ac3 -vn -acodec copy output.m4v

AC3 to AAC (not working as expected)

ffmpeg -i input.ac3 -vn -r 30000/1001 -acodec libfaac -ac 6 -ar 48000 -ab 448k output.aac

Eac3To

AC3 5.1 Channel Mapping Fix

eac3to true_hd.ac3 fixed_true_hd.ac3 -blu-ray -448

AAC to AC3

  1. Open AAC on Audacity or SoundBooth
  2. Export to Wav
  3. Remux from Wav to Wav with FFmpeg:ffmpeg -i audio.wav —vn -acodec copy audio-out.wav
  4. Convert to AC3 with EAC3toeac3to.exe audio.wav Main.ac3 -448

Other FFmpeg Options

-threads thread count
-y overwrite output files
-ss time_off set the start time offset
-t duration record or transcode “duration” seconds of audio/video
-ildct Interlaced
2010年06月22日

上交的v6点播网站

vls现在已经是vlc的一部分了

vlc性能相当好,尽可放心使用

2010年05月28日

配 置Debian Multimedia源

etch
deb http://www.debian-multimedia.org etch main
lenny
deb http://www.debian-multimedia.org lenny main
squeez
deb http://www.debian-multimedia.org squeeze main

也可以用ftp,但是ftp的连接速度没有http快。

保存以后
aptitude update;aptitude install debian-multimedia-keyring

1.首先选择好源地址;

deb http://ftp.jp.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.jp.debian.org/debian/ squeeze main contrib non-free

2.apt-get install ffmpeg x264 libmp3lame-dev

直播;

nice –10 ffmpeg -threads 4 -b 512k -s 720*576 -qscale 1 -r 25 -y -i udp://227.0.1.3:1234 -ar 44100 -ac 1 -ab 32 -vcodec libx264 -vpre medium_firstpass -level 30 -acodec libfaac -er aggressive -deinterlace -async 1 -bufsize 1024 -f flv rtmp://IP/live

2010年05月19日

deb http://mirrors.163.com/debian squeeze main non-free contrib
deb-src http://mirrors.163.com/debian squeeze main non-free contrib
deb http://mirrors.163.com/debian squeeze-proposed-updates main contrib non-free
deb-src http://mirrors.163.com/debian squeeze-proposed-updates main contrib non-free
deb http://mirrors.163.com/debian-security squeeze/updates main contrib non-free
deb-src http://mirrors.163.com/debian-security squeeze/updates main contrib non-free

deb http://http.us.debian.org/debian squeeze main contrib non-free
deb http://non-us.debian.org/debian-non-US squeeze/non-US main contrib non-free
deb http://security.debian.org squeeze/updates main contrib non-free

2010年05月18日

首先要安装各种解码器

1、lame
lame-3.97.tar.gz
Url:http://sourceforge.net/project/showfiles.php?group_id=290&package_id=309
安装方法如下:

Java代码
  1. tar -zxvf lame-3.97.tar.gz
  2. cd lame-3.97
  3. ./configure –enable-shared –prefix=/usr
  4. make
  5. make install
tar -zxvf lame-3.97.tar.gz
cd lame-3.97
./configure --enable-shared --prefix=/usr
make
make install

2、libogg
libogg-1.1.3.tar.gz
Url:http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
安装方法如下:

Java代码
  1. ./configure –prefix=/usr
  2. make
  3. make install
./configure --prefix=/usr
make
make install

3、libvorbis
libvorbis-1.1.2.tar.gz
Url:http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz
安装方法如下:

Java代码
  1. ./configure –prefix=/usr
  2. make
  3. make install
./configure --prefix=/usr
make
make install

4、xvid
xvidcore-1.1.3.tar.gz
Url:http://downloads.xvid.org/downloads/xvidcore-1.1.3.tar.gz
安装方法如下:

Java代码
  1. tar zvxf xvidcore-1.1.3.tar.gz
  2. cd xvidcore-1.1.3/build/generic
  3. ./configure –prefix=/usr
  4. make
  5. make install
tar zvxf xvidcore-1.1.3.tar.gz
cd xvidcore-1.1.3/build/generic
./configure --prefix=/usr
make
make install

5、x264
x264-snapshot-20071107-2245.tar.bz2
Url:http://www.videolan.org/developers/x264.html
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
安装方法如下:

Java代码
  1. bunzip2 x264-snapshot-20070913-2245.tar.bz2
  2. tar xvf x264-snapshot-20070913-2245.tar
  3. ./configure –prefix=/usr –enable-shared
  4. make
  5. make install
bunzip2 x264-snapshot-20070913-2245.tar.bz2
tar xvf x264-snapshot-20070913-2245.tar
./configure --prefix=/usr --enable-shared
make
make install

6、libdts
libdts-0.0.2.tar.gz
[url]http://download.videolan.org/pub/videolan/libdca/0.0.2/libdca-0.0.2.tar.gz [/url]
安装方法:

Java代码
  1. tar zxvf libdts-0.0.2.tar.gz
  2. cd libdts-0.0.2
  3. ./configure –prefix=/usr
  4. make
  5. make install
tar zxvf libdts-0.0.2.tar.gz
cd libdts-0.0.2
./configure --prefix=/usr
make
make install

7、a52
a52dec-0.7.4.tar.gz
http://liba52.sourceforge.net/downloads.html
安装方法:

Java代码
  1. ./configure –prefix=/usr
  2. make
  3. make install
./configure --prefix=/usr
make
make install

8、faad2
faad2-2.6.1.tar.gz
http://www.audiocoding.com/downloads.html

安装方法

Java代码
  1. autoreconf -vif
  2. ./configure –prefix=/usr –with-mp4v2 –enable-shared
  3. make
  4. make install
autoreconf -vif
./configure --prefix=/usr --with-mp4v2 --enable-shared
make
make install

9、faac
faac-1.26.tar.gz
http://linux.softpedia.com/progDownload/FAAC-Download-554.html
安装方法:

Java代码
  1. tar zxvf faac-1.26.tar.gz
  2. cd faac
  3. ./bootstrap
  4. ./configure –prefix=/usr
  5. make
  6. make install
tar zxvf faac-1.26.tar.gz
cd faac
./bootstrap
./configure --prefix=/usr
make
make install

10、amr-nb
amrnb-6.1.0.4.tar.bz2
http://ftp.penguin.cz/pub/users/utx/amr/amrnb-6.1.0.4.tar.bz2
安装方法:

Java代码
  1. ./configure –prefix=/usr
  2. make
  3. make install
./configure --prefix=/usr
make
make install

11、amr-wb
amrwb-7.0.0.1.tar.bz2
http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.1.tar.bz2
安装方法:

Java代码
  1. ./configure –prefix=/usr
  2. make
  3. make install
./configure --prefix=/usr
make
make install

12、lib52
a52dec-0.7.4.tar.gz
http://liba52.sourceforge.net/downloads.html

如果前面的安装一切顺利的话,恭喜你,可以安装ffmpeg了

安装ffmpeg

Java代码
  1. ./configure –prefix=/usr –enable-gpl –enable-shared –enable-libmp3lame –enable-libogg –enable-libvorbis –enable-libamr-nb –enable-libamr-wb –enable-libxvid –enable-libx264 –enable-liba52 –enable-liba52bin –enable-libfaac –enable-libfaad –enable-libfaadbin –enable-pp –enable-pthreads –disable-ffserver –disable-ffplay
  2. make
  3. make install
2009年12月22日

对于每天对着电脑工作的人来说,眼眼睛干涩是个很难避免的问题, 其实,只要稍微设置一下,就能让你电脑上的窗口从白花花的颜色变成淡淡的绿色。

设置方法:打开控制面板中的"显示" 选择外观(appearance)-高级(advanced),然后在项目(items)那栏选窗口(windows),再点颜色(color)-其它(others),然后把Hue(色调设为85,Sat(饱和度)设为90,Lum(亮度)设为205。然后单击 添加到自定义颜色(Add to custom colors),按“OK”…一直OK。

把窗口设成绿色之后,再来把IE的网页背景也变成养眼的绿色吧:打开IE,点击工具(TOOLS),点INTERNET选项(INTERNET OPTIONS),点右下角的 辅助功能(Assessibility),然后勾选 不使用网页中指定的颜色(ignore colors specified on web pages),然后点“OK”退出。

现在你就会发现你的屏幕已经变成淡淡的绿色了。这个颜色会比白色柔和许多,刚开始可能你还有些不适应,但确实对我们的眼睛有好处,建议大家试一下。