校验 linux(正则表达式校验)
老铁们,大家好,相信还有很多朋友对于校验 linux和正则表达式校验的相关问题不太懂,没关系,今天就由我来为大家分享分享校验 linux以及正则表达式校验的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
Linux校验md5命令linux校验md5
linux怎么把字符转换成16进制的md5值?
以hello字符串为例,字符串“hello”的MD5:$echo-nhello|md5sum|cut-d-f1得到的MD5值:5d41402abc4b2a76b9719d911017c592命令解释:md5sum:显示或检查MD5(128-bit)校验和,若没有文件选项,或者文件处为-,则从标准输入读取。
echo-n:不打印换行符。
cut:cut用来从标准输入或文本文件中剪切列或域。剪切文本可以将之粘贴到一个文本文件。-d指定与空格和tab键不同的域分隔符。-f1表示第一个域。参考这里。
详解Linux系统中md5sum命令的用法?
MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改。MD5全称是报文摘要算法(Message-DigestAlgorithm5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度为128位(十六进制长度就是32位)的指纹(或称报文摘要),不同的文件产生相同的报文摘要的可能性是非常非常之小的。
在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了linux后,就会有md5sum这个工具,直接在命令行终端直接运行。1、使用md5sum来产生指纹(报文摘要)命令如下:md5sumfile>file.md5或者md5sumfile>>file.md5也可以把多个文件的报文摘要输出到一个md5文件中,这要使用通配符*,比如某目录下有几个iso文件,要把这几个iso文件的摘要输出到iso.md5文件中,命令如下:md5sum*.iso>iso.md52、使用md5报文摘要验证文件,方法有二:把下载的文件file和该文件的file.md5报文摘要文件放在同一个目录下,然后用如下命令进行验证:
md5sum-cfile.md5然后如果验证成功,则会输出:正确md5sumpasswdpasswd.bak/etc/passwd
在Linux系统中使用SHA256来校验下载的文件的方法
当你下载了一个 ISO镜像,特别是从 BitTorrent网络上很多未知的种子处下载的,通常建议要验证下载镜像的完整性。
对于 Ubuntu发行版的情况, Canonical提供了几个供验证使用的验校文件(如 MD5SUM, SHA1SUMS和 SHA256SUMS)。在这个例子中我们使用 SHA256SUMS。
首先,下载下面两个文件。
复制代码代码如下:$ wget
$ wget
第一个文件是 ISO镜像的 SHA256验校文件,而第二个文件(*.gpg)是验校文件的签名。第二个文件的目的是验证验校文件本身的有效性。
我们通过运行下面的命令来验证 SHA256SUMS文件的有效性。
复制代码代码如下:$ gpg--verify SHA256SUMS.gpg SHA256SUMS
gpg: Signature made Thu 23 Oct 2014 09:36:00 AM EDT using DSA key ID FBB75451
gpg: Can't check signature: public key not found
如果你得到上面的错误信息,是因为你还没有导入生成这个签名的公共密钥。因此我们现在导入需要的公共密钥。
这样做之前,你需要知道公共密钥的“key ID”,而这在上面的 gpg命令的输出中有显示。在这个例子中,密钥 ID时“FBB75451”。运行下面的命令来从官方 Ubuntu密钥服务器导入公共密钥。
复制代码代码如下:$ gpg--keyserver hkp://keyserver.ubuntu.com--recv-keys FBB75451
既然公共密钥已经被导入,我们可以继续并重新运行之前的命令来验证签名。
复制代码代码如下:gpg--verify SHA256SUMS.gpg SHA256SUMS
这次你没有看到“public key not found”的错误信息。如果 SHA256SUMS文件时有效的,你会看到“Good signature from”的信息。注意到你还看到一个“This key is not certified with a trusted signature”的警告信息。基本上这个警告信息是告诉你对导入的公共密钥没有明确信任。要避免这个警告,你可以选择指定完全信任导入的公共密钥,但你应该只有在通过其他方式审查了这个密钥之后才这样做。否则的话,你可以暂时忽略这个警告。
在验证了 SHA256SUMS文件的完整性后,最后一个步骤是比较已下载 ISO文件的 SHA256验校和和 SHA256SUMS文件中对应的验校值。你可以使用 sha256sum命令行工具来完成这个步骤。
为方便起见,下面一行命令比较 SHA256验校和并报告结果。
复制代码代码如下:$ sha256sum-c<(grep ubuntu-14.10-desktop-amd64.iso SHA256SUMS)
ubuntu-14.10-desktop-amd64.iso: OK
如果你看到了上面的输出信息,这表明两个验校值相匹配。这样已下载 ISO镜像的完整性就被成功的验证了。
如何验证的Linux ISO的校验和确认它没有被篡改
你好,验证方法如下:
1、检查系统密码文件
首先从明显的入手,查看一下passwd文件,ls–l/etc/passwd查看文件修改的日期。
awk–F:‘length($2)==0{print$1}’/etc/shadow
2、查看一下进程,看看有没有奇怪的进程
重点查看进程:ps–aef| grep inetd
inetd是UNIX系统的守护进程,正常的inetd的pid都比较靠前,如果你看到输出了一个类似inetd–s/tmp/.xxx之类的进程,着重看inetd–s后面的内容。在正常情况下,LINUX系统中的inetd服务后面是没有-s参数的,当然也没有用inetd去启动某个文件;而solaris系统中也仅仅是inetd–s,同样没有用inetd去启动某个特定的文件;如果你使用ps命令看到inetd启动了某个文件,而你自己又没有用inetd启动这个文件,那就说明已经有人入侵了你的系统,并且以root权限起了一个简单的后门。
输入ps–aef查看输出信息,尤其注意有没有以./xxx开头的进程。一旦发现异样的进程,经检查为入侵者留下的后门程序,立即运行kill–9 pid开杀死该进程,然后再运行ps–aef查看该进程是否被杀死;一旦此类进程出现杀死以后又重新启动的现象,则证明系统被人放置了自动启动程序的脚本。这个时候要进行仔细查找:find/-name程序名–print,假设系统真的被入侵者放置了后门,根据找到的程序所在的目录,会找到很多有趣的东东,
接下来根据找到入侵者在服务器上的文件目录,一步一步进行追踪。
3、检查系统守护进程
检查/etc/inetd.conf文件,输入:cat/etc/inetd.conf| grep–v“^#”,输出的信息就是你这台机器所开启的远程服务。
一般入侵者可以通过直接替换in.xxx程序来创建一个后门,比如用/bin/sh替换掉in.telnetd,然后重新启动inetd服务,那么telnet到服务器上的所有用户将不用输入用户名和密码而直接获得一个rootshell。
4、检查网络连接和监听端口
输入netstat-an,列出本机所有的连接和监听的端口,查看有没有非法连接。
输入netstat–rn,查看本机的路由、网关设置是否正确。
输入 ifconfig–a,查看网卡设置。
5、检查系统日志
命令last| more查看在正常情况下登录到本机的所有用户的历史记录。但last命令依赖于syslog进程,这已经成为入侵者攻击的重要目标。入侵者通常会停止系统的syslog,查看系统syslog进程的情况,判断syslog上次启动的时间是否正常,因为syslog是以root身份执行的,如果发现syslog被非法动过,那说明有重大的入侵事件。
在linux下输入ls–al/var/log
检查wtmp utmp,包括messgae等文件的完整性和修改时间是否正常,这也是手工擦除入侵痕迹的一种方法。
6、检查系统中的core文件
通过发送畸形请求来攻击服务器的某一服务来入侵系统是一种常规的入侵方法,典型的RPC攻击就是通过这种方式。这种方式有一定的成功率,也就是说它并不能100%保证成功入侵系统,而且通常会在服务器相应目录下产生core文件,全局查找系统中的core文件,输入find/-name core–exec ls–l{}\;依据core所在的目录、查询core文件来判断是否有入侵行为。
7、检查系统文件完整性
检查文件的完整性有多种方法,通常我们通过输入ls–l文件名来查询和比较文件,这种方法虽然简单,但还是有一定的实用性。但是如果ls文件都已经被替换了就比较麻烦。在LINUX下可以用rpm–V `rpm–qf文件名`来查询,查询的结果是否正常来判断文件是否完整。