2012
06
21
10:19

VPS 安全:WEB 服务器常用 IPTABLES 规则

最近因为自己一台VPS的问题一直在不断的查找VPS安全的资料。下面分享一个常用的iptables规则

IPT=”/sbin/iptables”

$IPT –delete-chain

$IPT –flush

$IPT -P INPUT DROP #1

$IPT -P FORWARD DROP #1

$IPT -P OUTPUT DROP #1

$IPT -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT #2

$IPT -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT #3

$IPT -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT #3

$IPT -A INPUT -p tcp -m tcp –dport 21 -j ACCEPT #3

$IPT -A INPUT -p tcp -m tcp –dport 873 -j ACCEPT #3

$IPT -A INPUT -i lo -j ACCEPT #4

$IPT -A INPUT -p icmp -m icmp –icmp-type 8 -j ACCEPT #5

$IPT -A INPUT -p icmp -m icmp –icmp-type 11 -j ACCEPT #5

$IPT -A OUTPUT -m state –state RELATED,ESTABLISHED -j ACCEPT #6

$IPT -A OUTPUT -p udp -m udp –dport 53 -j ACCEPT #7

$IPT -A OUTPUT -o lo -j ACCEPT #4

$IPT -A OUTPUT -p tcp -m tcp –dport 80 -j ACCEPT #8

$IPT -A OUTPUT -p tcp -m tcp –dport 25 -j ACCEPT #9

$IPT -A OUTPUT -p icmp -m icmp –icmp-type 8 -j ACCEPT #10

$IPT -A OUTPUT -p icmp -m icmp –icmp-type 11 -j ACCEPT #10

service iptables save

service iptables restart

#1、设置INPUT,FORWARD,OUTPUT链默认target为DROP,也就是外部与服务器不能通信。

#2、设置当连接状态为RELATED和ESTABLISHED时,允许数据进入服务器。

#3、设置外部客户端连接服务器端口80,22,21,873。

#4、允许内部数据循回。

#5、允许外部ping服务器 。

#6、设置状态为RELATED和ESTABLISHED的数据可以从服务器发送到外部。

#7、允许服务器使用外部dns解析域名。

#8、设置服务器连接外部服务器端口80。

#9、允许服务器发送邮件。

#10、允许从服务器ping外部

这样禁用了除ssh、http、ftp等外的所有端口,当然我们可能用到其他端口以供管理,比如说我们在lnmp下常用PureFTPd来管理FTP,这样的话我们首先要编辑下 /etc/proftpd.conf,配置以下内容:

PassivePorts 25000 26000 #(端口号,可自行选择)

然后再上面的代码中还需要添加一行:

$IPT -A INPUT -p tcp -m tcp –dport 25000:26000 –syn -j ACCEPT #这里的25000和26000必须为你添加的端口号

另外也有人可能会用到VNC,那就继续添加一行:

$IPT -A INPUT -p tcp -m tcp –dport 5901 –syn -j ACCEPT#5901为你的vnc端口

等所有的端口都配置好以后,将脚本存储为iptables.sh,上传至VPS,执行sh iptables.sh即可自动配置防火墙。

这样,相信大家有点找到规律了,其他端口可以根据自己的需要选择开放然后重新执行脚本即可~

2012
06
21
10:14

Linux下文件权限及文件属组更改

现在开始使用linux的VPS了,不再使用面版控制,也不会安装什么控制面版,如kloxo之类的,装了占内存啊!纯命令行控制,虽然麻烦一点,但节省服务器资源,这样linux下的很多命令自然就需要用到了,下面这几个命令是常用的更改权限的命令了,放这里,以待不时之需。

1、chmod 命令

功能:chmod命令是非常重要的,用于改变文件或目录的访问权限.用户用它控制文件或目录的访问权限.

语法:该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

1. 文字设定法

chmod [who] [+ | – | =] [mode] 文件名?

参数:

操作对象who可是下述字母中的任一个或者它们的组合:

u 表示“用户(user)”,即文件或目录的所有者。

g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。

o 表示“其他(others)用户”。

a 表示“所有(all)用户”。它是系统默认值。

操作符号可以是:

+ 添加某个权限。

– 取消某个权限。

= 赋予给定权限并取消其他所有权限(如果有的话)。

设置mode所表示的权限可用下述字母的任意组合:

r 可读。

w 可写。

x 可执行。

X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。

s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用 户ID位,“g+s”设置组ID位。

t 保存程序的文本到交换设备上。

u 与文件属主拥有一样的权限。

g 与和文件属主同组的用户拥有一样的权限。

o 与其他用户拥有一样的权限。

文件名:以空格分开的要改变权限的文件列表,支持通配符。

在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example

使同组和其他用户对文件example 有读权限。

 

2、chgrp命令

功能:改变文件或目录所属的组。

语法:chgrp [选项] group filename?

该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。

参数:

– R 递归式地改变指定目录及其下的所有子目录和文件的属组。

例1:$ chgrp – R book /opt/local /book

改变/opt/local /book/及其子目录下的所有文件的属组为book。

 

3、chown 命令

功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,root用户应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。

语法:chown [选项] 用户或组 文件

说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。

参数:

– R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。

– v 显示chown命令所做的工作。

例1:把文件shiyan.c的所有者改为wang。

$ chown wang shiyan.c

例2:把目录/his及其下的所有文件和子目录的属主改成wang,属组改成users。

$ chown – R wang.users /his

2012
06
21
10:03

VPS安全设置阻止扫站爆破者

前面我们介绍了VPS SSH默认端口22的修改方法,这里我们继续加强一下VPS的安全意识,给大家一段代码来检测你的vps是否遭遇了包里破解:

cat /var/log/secure|awk ‘/Failed/{print $(NF-3)}’|sort|uniq -c|awk ‘{print $2″=”$1;}’       Redhat/Fedora

cat /var/log/auth.log|awk ‘/Failed/{print $(NF-3)}’|sort|uniq -c|awk ‘{print $2″=”$1;}’       Debian/Ubuntu

如果查询出来的结果中包含了“ip地址=数量”这样的结果,那就说明有人曾试图破解过你的密码。

设置一下禁用root登录

在禁用root登录前首先一定要先增加一个普通权限的用户,并设置密码

useradd test

passwd test

然后禁止ROOT远程SSH登录:

 vi /etc/ssh/sshd_config

把其中的

PermitRootLogin yes

改为

PermitRootLogin no

如果PermitRootLogin前面的有#的话也一定要删除掉,否则无法生效。

再重启sshd服务

 service sshd restart

以后我们便可以通过普通权限的ssh账户连接我们的vps,如果需要管理权限的话,可以用下面命令提升到root权限

su root

Iptable设置:

封掉多次尝试登录的恶意IP。

封单个IP使用如下命令:

iptables -I INPUT -s 61.253.249.157 -j DROP

封整个IP段使用如下命令:

iptables -I INPUT -s 61.253.0.0/16 -j DROP

解除IP封锁使用如下命令:

iptables -L INPUT

iptable -D INPUT num序号

2012
06
21
09:48

VPS修改SSH默认端口

虽然咱是个伪LINUX爱好者,但是最最基本的我们还是要学习一下的,拿到VPS第一件事是修改一下SSH默认端口22,

 [root@server ~]$ vi /etc/ssh/sshd_config

找到

#port 22

将前面的#去掉,然后修改端口

port 2008

重启服务,这样默认的22端口就被我们改成了2008了

[root@server ~]$ /etc/init.d/sshd restart

 

2012
06
21
08:06

PAYPAL 付款 PayPal Subscribe 和 PayPal Check Out

最近经常在用PAYPAL在国外网站上购买东西,有的网站上在付款时订单上有两个付款按钮,一个是 PayPal Subscribe,另一个是PayPal Check Out
这两者区别是:

PayPal Subscribe 付款类型是“循环付款”,那这个循环付款是什么意思呢?经过了解“循环付款”指的就是按期自动从帐户绑定的信用卡上划账给服务商。类似分期付款,但这个是无限时间的。

PayPal Check Out 是正常的一次付款,以后的续费都要找到订单按周期一次次的进行支付。

如果您付款时使用了 PayPal Subscribe,并想取消循环付款,请登录您的PAYPAL,点击“用户信息”,再选择“我的预核准付款”,在这里可以取消或者休眠相关付款协议。

2012
06
18
08:09

DNS解析中TTL的设置时间多少合适?

网上关于域名dns解析中ttl值设置时间的文章不多,我今天遇到了这个问题,就把这个问题整理一下,希望可以给需要的朋友有所帮助。

什么是域名的TTL值?

TTL(Time-To-Live),就是一条域名解析记录在DNS服务器中的存留时间。当各地的DNS服务器接受到解析请求时,就会向域名指定的NS服务器(权威域名服务器)发出解析请求从而获得解析记录;在获得这个记录之后,记录会在DNS服务器(各地的缓存服务器,也叫递归域名服务器)中保存一段时间,这段时间内如果再接到这个域名的解析请求,DNS服务器将不再向NS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是TTL值。

域名DNS分两种,一种是权威域名服务器,域名注册商的服务器都为权威域名服务器,TTL值只能在权威服务器修改,还有一种域名解析服务器就是缓存DNS服务器,比如各地ISP上网设置的DNS服务器,它的作用主要是把域名解析结果缓存到本地,方便你查询。域名DNS的TTL值实际上就是各地的DNS缓存服务器多久去你的权威域名解析服务器(NS)获取一次你域名的解析IP。

那么域名解析的TTL只应该设置为多少合适呢,下面有两个建议,你可以结合自己参考一下:

一.增大TTL值,以节约域名解析时间,给网站访问加速。

一般情况下,域名的各种记录是极少更改的,很可能几个月、几年内都不会有什么变化。我们完全可以增大域名记录的TTL值让记录在各地DNS服务器中缓存的时间加长,这样在更长的一段时间内,我们访问这个网站时,本地ISP的DNS服务器就不需要向域名的NS服务器发出解析请求,而直接从缓存中返回域名解析记录。

国内和国际上很多平台的TTL值都是以秒为单位的,很多的默认值都是3600,也就是默认缓存1小时,这个值实在有点小了,难道会有人一个小时就改一次域名记录吗?你可以根据自己的需要把这个值适当的扩大,例如要缓存一天就设置成86400。Godaddy的TTL设置比较直观,但总共只有5个值可以选定,即时切换到高级设置模式也是如此,有点死板了。

二.减小TTL值,减少更换空间时的不可访问时间。

更换空间99.9%会有DNS记录更改的问题,因为TTL缓存的问题,新的域名记录在有的地方可能生效了,但在有的地方可能等上一两天甚至更久才生效。结果就是有的人可能访问到了新服务器,有的人访问到了旧服务器。如果原来的域名TTL值设置的小,各地的ISP域名缓存服务器服务器就会很快的访问你域名的权威DNS解析服务器,尽快把你域名的DNS解析IP返回给查询者

这就是说你如果想要解析速度,各地ISP的DNS服务器缓存你的域名,你就需要把TTL值设置大一些,如果你想域名更换空间或者IP后能尽快解析到新的IP上,就需要把TTL值设置小一些

总结:对于IP地址相对固定,或短期内不会变更IP地址的用户来说TTL值设置的大些如几个小时或更大些为宜。调大TTL值可以显著的提高域名的解析稳定性和速度。而对于近期有计划变更IP地址的用户需要提前把TTL值改小,以便使缓存在世界各地DNS服务器上的旧域名记录迅速过期,等IP地址固定下来后再把TTL值改大。

2012
06
15
15:10

人生十度修炼

1、忍得住孤独

人生想要获得成功,必须忍得住孤独,尤其是在创业之初,很多时候为了达成目标,可能别人在休息时,我们还一个人在默默无闻的付出,这种过程是非常孤独的,但如果能挺得过去,我们将会比别人取得更大的成功。

2、耐得住寂寞

为了生活、为了工作、为了事业,往往很多时候我们都不能陪在亲人朋友的身边,而是必须占用很多的休息时间和与家人团聚的时间。我们是否能够耐得住这种寂寞?

3、挺得住痛苦

人生道路并非一帆风顺,一路上难免会有很多坎坷、泪水、痛苦。痛苦之后往往会有两种结果:一是委靡不振;二是更加强大,我们在经历了痛苦之后究竟是委靡不振还是更加强大?取决于我们是否能挺得住痛苦?

4、顶得住压力

没压力就会没动力,大家都知道这个简单的道理,但是很多人却在遇到压力时选择了逃避和放弃。只有当我们摆正心态,坦然的面对压力时,才会给我们的成长和发展注入无限动力。

5、挡得住诱惑

做人做事必须坚守自己的理想和原则。只要我们所坚守的是正确的事情,哪怕会有短暂的痛苦,也应该坚持下去;如果我们所做的是错误的事情,哪怕会得到短暂的快乐,也应该坚决拒之!生活中处处都会存在着各种各样的诱惑,如果定力不强,这些诱惑会随时影响并阻碍着我们前进的步伐,甚至会让自己迷失前进的方向,陷入短暂利益的漩窝中。在种种诱惑面前我们是否能一如继往的坚持自己的原则和理想?

6、经得起折腾

每一次的失败、每一次的泪水和汗水总是在不断的折腾着我们,因此让我们的发展道路充满荆棘,但经过无数次的折腾才会让我们从中深刻的体会到生活的真谛,我们试问自己能一而再、再而三的经得起折腾吗?当经历无数次的折腾后,我们还能坚持吗?

7、受得起打击

当面对他人一次又一次的冷嘲热讽、当面对客户对我们一次又一次的打击时,我们能经受得起吗?我们是否还能保持最初的激情,同时坚守自己的目标?我们是否还能保持不下降指标而是持续不断的增加措施?在市场开发中,当客户毫不客气的让我们“滚”时,我们会保持一种什么样的心态呢?我们是继续争取还是马上灰溜溜的离开而从此不再争取面谈?无论是个人还是集体不在打击中成长,就在打击中消亡!

8、丢得起面子

面子是自己给自己的,不是别人给的。害怕丢面子会让自己丢一辈子的面子,害怕失败会失败一辈子!害怕丢面子往往带来的结果是打肿脸充胖子,会让自己更加痛苦,从面丢掉更大的面子,让自己陷入一种恶性循环!

9、担得起责任

“责任”一词在生活、工作中都随时被我们挂在嘴边,屡见不鲜。新华词典中关于对“责任”的解释是:份内应做而未做或者未做好应当为此承担的过失。责任分为三种:家庭责任、企业责任、社会责任。在家庭中我们扮演着儿女、父亲、丈夫、妻子、、、等角色;在企业中我们扮演着员工、管理者、领导或者老板的角色;在社会中我们扮演着公民、律师、老师、企业家、、、等等角色,总之每个人在不同的场合都扮演着不同的角色,然而我们是否能真正的用行动来承担起自己在各种场合下的角色?

10、提得起精神

当我们在连续多天加班或超负荷工作后,是否能提起精神为了自己目标而继续冲刺?

世界是修炼之房,尘事是修炼之境;天空是修炼之志,大地是修炼之胸。

2012
06
14
09:32

lnmp安装笔记

系统需求:

需要2 GB硬盘剩余空间

128M以上内存,OpenVZ的建议192MB以上(小内存请勿使用64位系统)

Linux下区分大小写,输入命令时请注意!

安装步骤:

1、使用putty或类似的SSH工具登陆;

登陆后运行:screen -S lnmp

如果提示screen命令不存在可以执行:yum install screen 或 apt-get install screen安装

2、下载LNMP一键安装包:

您可以选择使用下载版(推荐国外或者美国VPS使用)或者完整版(推荐国内VPS使用)

如需下载版执行命令:wget -c http://soft.vpser.net/lnmp/lnmp0.9.tar.gz

如需完整版执行命令:wget -c http://soft.vpser.net/lnmp/lnmp0.9-full.tar.gz

下载完成后LNMP一键安装包就会被下载到您的服务器或VPS上(一般用root登陆没切换目录的话应该在/root 下面)。

 

3、解压LNMP一键安装包:

执行:tar zxvf lnmp0.9.tar.gz 或 tar zxvf lnmp0.9-full.tar.gz 就会将LNMP一键安装包解压缩。

 

4、开始安装LNMP一键安装包:

进入LNMP安装目录,执行:cd lnmp0.9/ 或 cd lnmp0.9-full/

再执行安装程序前需要您确认您的Linux发行版,可以执行:cat /etc/issue 查看是CentOS、Debian还是Ubuntu,也可以通过VPS服务商提供的控制面板上查看。确定好之后,选择下面对应系统的安装命令:

CentOS系统下的安装

执行./centos.sh 2>&1 | tee lnmp.log (如果系统是Red Hat Enterprise Linux Server(RHEL)需要先确保yum可以正常安装软件,RHEL安装yum教程)

Debian系统下的安装

执行./debian.sh 2>&1 | tee lnmp.log

Ubuntu系统下的安装

执行./ubuntu.sh 2>&1 | tee lnmp.log

执行安装命令后,会出现如下界面:

输入要绑定的域名(建议使用一个二级域名,该域名会绑定到/home/wwwroot/,方便以后管理!如果输入有错误,可以按住Ctrl再按Backspace键删除),输入完成后回车,会显示如下界面:

 

(注:如果是Debian系统,输入域名后会提示Where are your servers located? asia,america,europe,oceania or africa,这里是选择服务器或VPS在哪个大洲,一般都是美国VPS,直接回车就行,如果是中国的,输入asia,回车。)

 

再输入要设置的MySQL root的密码,输入完成后回车,会显示如下界面:

如果需要安装InnoDB,可以输入 y 回车,不需要的话直接回车即可。回车后会显示如下界面:

提示”Press any key to start…”,按回车键开始安装。
LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。

 

5、安装完成
如果显示如下界面:

说明已经安装成功。

如果显示如下界面:


说明没有安装成功!!需要用winscp到lnmp0.9的目录下找到lnmp.log

虚拟主机管理


1、添加虚拟主机,执行如下命令:/root/vhost.sh 根据提示输入要绑定的域名,回车,如果需要添加更多的域名,输入y,再输入要另外绑定的域名,多个域名可以用空格隔开(注:带www和不带www的是不同的域名,如需带www和不带的www的域名都访问同一个网站需要同时都绑定)。再输入域名绑定的目录(绝对目录,如/home/wwwroot/lnmp,如果不填默认是/home/wwwroot/绑定的域名,目录不一定非要是/home/wwwroot/,如果/data/ 下面有大量的空间也可以填写/data/www/lnmp 之类的。),再选择是否添加伪静态规则,默认已经有了discuz、discuzx、wordpress、sablog、emlog、dabr、phpwind、wp2(二级目录wp伪静态),可直接输入以上名称即可,如果需要添加自定义伪静态规则,直接输入一个想要的名字,程序会自动创建伪静态文件,直接在/usr/local/nginx/conf/你自定义的伪静态名字.conf 里面添加伪静态规则就行(注:添加完执行/etc/init.)。接下来会提示是否需要启用日志功能,一般情况下不需要启动,直接输入n就行,如需启动,输入y,再输入要定义的日志文件名字,回车就会自动添加虚拟主机。

2、删除虚拟主机,ssh执行:rm /usr/local/nginx/conf/vhost/域名.conf

安装其他组件
(注:安装如下组件,必须在lnmp0.9的安装目录,即lnmp压缩包解压缩后cd lnmp0.9/后的目录!,如果找不到可以执行find / -name eaccelerator.sh查找。)
(注:以下组件不一定您都需要,请按您的需求使用!)
1、安装PureFTPd和FTP管理面板,执行如下命令:./pureftpd.sh 按提示输入你MySQL的root密码、FTP用户管理面板的密码、MySQl的FTP数据库密码(可直接回车,自动生成一个密码),回车确认,就会自动安装PureFTPd,提示安装完PureFTPd后,在浏览器执行http://你的域名或IP/ftp/ 输入你前面设置的FTP用户管理面板的密码,就可以管理FTP。

2、安装eAccelerator,执行如下命令:./eaccelerator.sh ,按提示选择版本,回车确认后,就会自动安装并重启web服务。

3、安装ionCube,执行如下命令:./ionCube.sh 回车确认后,就会自动安装并重启web服务。

4、安装imageMagick,执行如下命令:./imageMagick.sh 回车确认后,就会自动安装并重启web服务。

5、安装memcached,执行如下命令:./memcached.sh 回车确认后,就会自动安装并重启web服务。

升级程序
6、升级Nginx版本,执行如下命令:./upgrade_nginx.sh 按提示输入nginx的版本号,如1.0.10,版本号可以从http://nginx.org/en/download.html获取。(注:升级过程中MySQL、PHP-FPM将会暂停。)

7、升级PHP版本,执行如下命令:./upgrade_php.sh 按提示输入php版本号,如5.3.6。(注:某些网站程序,如shopex等有兼容性问题,升级前确保你使用的程序以支持5.3.*版本。升级过程中Nginx、MySQL、PHP-FPM将会暂停。)

状态管理
LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}

相关图形界面程序
phpinfo : http://前面输入的域名或IP/phpinfo.php
phpMyAdmin : http://前面输入的域名或IP/phpmyadmin/
探针 : http://前面输入的域名或IP/p.php
PureFTP管理界面:http://前面输入的域名或IP/ftp/
Memcached测试页面:http://前面输入的域名或IP/memcached.php

LNMP相关目录
nginx : /usr/local/nginx
mysql : /usr/local/mysql
php : /usr/local/php
网站目录: /home/wwwroot/
Nginx日志目录:/home/wwwlogs/
/root/vhost.sh添加的虚拟主机配置文件所在目录:/usr/local/nginx/conf/vhost/

LNMP相关配置文件
Nginx主配置文件:/usr/local/nginx/conf/nginx.conf
/root/vhost.sh添加的虚拟主机配置文件:/usr/local/nginx/conf/vhost/域名.conf
MySQL配置文件:/etc/my.cnf
PHP配置文件:/usr/local/php/etc/php.ini
php-fpm配置文件:/usr/local/php/etc/php-fpm.conf
PureFtpd配置文件:/usr/local/pureftpd/pure-ftpd.conf
PureFtpd MySQL配置文件:/usr/local/pureftpd/pureftpd-mysql.conf

2012
06
14
08:49

centos中安装和卸载软件的使用方法

在Centos中yum安装和卸载软件的使用方法

安装方法

安装一个软件时

yum -y install httpd

安装多个相类似的软件时

yum -y install httpd*

安装多个非类似软件时

yum -y install httpd php php-gd mysql

卸载一个软件时

yum -y remove httpd

卸载多个相类似的软件时

yum -y remove httpd*

卸载多个非类似软件时

yum -y remove httpd php php-gd mysql

另外还有一个非常棒的用法

假如我要执行iostat这个命令来查看CPU与存储设备状态,可是执行却发现没有这个命令

于是执行yum install iostat,结果说找不到该软件,使用下面的办法可以解决

yum search iostat就能查到和iostat相关的安装包了,

另外想安装一个程序,只记得一部分名称,也可以用这个办法来实现安装

yum search png |grep png

就能找到我们想安装的libpng这个名称