linux 中安装 web 服务器常用命令汇总

<p><strong>#1、安装之前查看端口是否被占用</strong></p> <li><a href="http://my.oschina.net/u/193184/blog/146885#OSC_h3_1">查看端口占用情况的命令:lsof -i</a></li> <li><a href="http://my.oschina.net/u/193184/blog/146885#OSC_h3_2">查看某一端口的占用情况: lsof -i:端口号</a></li> <li><a href="http://my.oschina.net/u/193184/blog/146885#OSC_h3_3">结束占用端口的进程:killall 进程名</a></li> <p>lsof -i:80 <br />COMMAND&#160;&#160; PID&#160;&#160;&#160;&#160; USER&#160;&#160; FD&#160;&#160; TYPE DEVICE SIZE/OFF NODE NAME <br />apache2&#160; 1630&#160;&#160;&#160;&#160; root&#160;&#160;&#160; 3u&#160; IPv4&#160;&#160; 7860&#160;&#160;&#160;&#160;&#160; 0t0&#160; TCP *:http (LISTEN) <br />apache2 23493 www-data&#160;&#160;&#160; 3u&#160; IPv4&#160;&#160; 7860&#160;&#160;&#160;&#160;&#160; 0t0&#160; TCP *:http (LISTEN) <br />apache2 23494 www-data&#160;&#160;&#160; 3u&#160; IPv4&#160;&#160; 7860&#160;&#160;&#160;&#160;&#160; 0t0&#160; TCP *:http (LISTEN) <br />apache2 23523 www-data&#160;&#160;&#160; 3u&#160; IPv4&#160;&#160; 7860&#160;&#160;&#160;&#160;&#160; 0t0&#160; TCP *:http (LISTEN) <br />apache2 23524 www-data&#160;&#160;&#160; 3u&#160; IPv4&#160;&#160; 7860&#160;&#160;&#160;&#160;&#160; 0t0&#160; TCP *:http (LISTEN) <br />apache2 23525 www-data&#160;&#160;&#160; 3u&#160; IPv4&#160;&#160; 7860&#160;&#160;&#160;&#160;&#160; 0t0&#160; TCP *:http (LISTEN)</p> <p>&#160;</p> <p>#<strong>2、如何通过Linux系统下iptables防火墙开启/关闭指定端口方法</strong></p> <p>排除端口没有被占用之后,还需要判断防火墙是否关闭了端口,防止端口不可用。</p> <p>linux端口和服务:</p> <p>一、端口和服务的关系 <br />端口号与相应服务的对应关系存放在/etc/services文件中,这个文件中可以找到大部分端口。使用netstat命令 <br />显示的服务名称也是从这个文件中找的。</p> <p><font style="background-color: #666666" color="#ffffff">有人说将这个文件中的相应端口号注释掉,就可以禁用该端口。我试了却不起作用,这种方法应该是没有用的,是误传!</font></p> <p><font style="background-color: #666666" color="#ffffff">将相应端口号注释掉,唯一的作用就是使用netsat命令时,将不显示服务名(比如ftp)而是显示端口号(比如21)。</font></p> <p><font style="background-color: #666666" color="#ffffff">原理也很简单:netstat无法在/etc/services文件中找到端口号对应的服务名,自然就无法显示了。</font></p> <p><font style="background-color: #666666" color="#ffffff">所以/etc/services文件只是起到端口号与相应服务的映射关系,与端口的启动和关闭没有关系!</font></p> <font color="#000000"></font> <p> <br />二、查看本机开放的端口 <br />1、netstat&#160; 查看端口和连接 <br />netstat&#160; 列出目前已经连接的服务名 <br />netstat -a&#160; 列出目前已经连接的和正在监听的服务名 <br />netstat -an&#160; 列出目前已经连接的和正在监听的端口号(与上面的命令功能一样,只是不解释端口号对应的服务名) <br />netstat -ap&#160; 在上面命令的基础上列出连接的PID(进程号),用这个PID,可以使用KILL 来杀死连接 <br />&#160;&#160;&#160; 例如:某个连接的PID=111,想踢出去就使用 KILL -9 111。ok! <br />netstat -rn&#160; 输出路由表</p> <p> <br />2、nmap <br />nmap&#160; 127.0.0.1&#160; 查看本机开放的端口,会扫描所有端口 <br />nmap&#160; -p 1024&#160; 65535? 127.0.0.1&#160; 扫描指定端口范围 <br />nmap -PT 192.168.1.1-111? 扫描一组范围的电脑</p> <p> <br />三、关闭和开启端口(服务) <br />关闭端口的方法: <br />1、因为每个端口都有对应的服务,因此要关闭端口只要关闭相应的服务就可以了。 <br />2、用IPTABLE对端口进行限制,这样也能使端口不被访问,但端口本身并没有关闭。 <br /></p> <p>在这儿只介绍关闭服务的方法,IPTABLE的应用以后再讨论。 <br />linux中开机自动启动的服务一般都存放在两个地方: <br />/etc/init.d/文件夹下的服务: <br />这个文件夹下的服务都可以通过运行相应的SCRIPT来启动或关闭。 <br />例如:启动sendmail服务&#160; ./sendmail start (打开了TCP 25端口) <br />关闭sendmail服务&#160; ./sendmail stop (关闭TCP 25 端口) <br />&#160; 查看sendmail服务当前状态&#160; ./sendmail? status (查看服务是否运行) <br />/etc/xinetd.d/文件夹下的服务: <br />这个文件夹下的服务需要通过更改服务的配置文件,并重新启动xinetd才可以。 <br />例如:要启动其中的auth服务,打开/etc/xinetd.d/auth配置文件,更改“disable=no”,保存退出。运行/etc/rc.d/init.d/xinetd restart&#160; <br />要停止其中的auth服务,打开/etc/xinetd.d/auth配置文件,更改“disable=yes”,保存退出。运行/etc/rc.d/init.d/xinetd restart&#160; <br />四、控制开机自动启动的服务 <br />上面说的控制服务开关方法是在启动linux之后进行操作的,如果我想在linux启动时控制哪些服务启动、哪些服务关闭怎么做 <br />控制服务自动启动的方法有3个: <br />1、更改/etc/rc.d下的对应文件夹: <br />&#160; 如果你登陆的默认界面是字符界面,那么修改rc.3文件夹,如果登陆界面默认是图形界面,那么修改rc.5。 <br />&#160; 在文件夹中,每个服务的名字前都带有“K”或“S”,S就代表这个服务开机自动运行了,把它删了或前缀改为“K”下次就不会启动了。 <br />2、使用ntsysv命令: <br />&#160; 输入ntsysv命令,将会出现一个服务列表,需要启动的打“*”,简单。 <br />3、使用chkconfig命令: <br />让某个服务不自动启动:例如httpd:chkconfig --level 35&#160; httpd? off&#160; ;35指的是运行级别 <br />让某个服务自动启动:例如httpd:chkconfig --level 35&#160; httpd? on ; <br />&#160; 查看所有服务的启动状态:chkconfig --list&#160; <br />&#160; 查看某个服务的启动状态:chkconfig --list |grep httpd</p> <p>&#160;</p> <p>四、防火墙如何关闭和开启端口。</p> <p>开启81端口: <br />iptables -I INPUT -i eth0 -p tcp --dport 81 -j ACCEPT <br />iptables&#160; -I OUTPUT -o eth0 -p tcp --sport 81 -j ACCEPT <br /></p> <p>关闭81端口: <br />iptables -I INPUT -i eth0 -p tcp --dport 81 -j DROP <br />iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j DROP <br /></p> <p>然后保存 <br />/etc/rc.d/init.d/iptables save</p> <p>可以使用lsof命令来查看某一端口是否开放.查看端口可以这样来使用. <br />lsof -i:81 <br />如果有显示说明已经开放了.如果没有显示说明没有开放</p>

转载于:https://my.oschina.net/u/1244232/blog/395005

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值