|簡體中文

比思論壇

 找回密碼
 按這成為會員
搜索



查看: 769|回復: 0
打印 上一主題 下一主題

限制Linux对外联机的端口简析

[複製鏈接]

989

主題

1

好友

5294

積分

教授

Rank: 8Rank: 8

  • TA的每日心情
    奮斗
    2024-10-17 01:09
  • 簽到天數: 1257 天

    [LV.10]以壇為家III

    推廣值
    2
    貢獻值
    378
    金錢
    1541
    威望
    5294
    主題
    989

    回文勇士 文明人 中學生 高中生 簽到勳章 簽到達人 男生勳章 大學生 文章勇士 附件高人 附件達人 文章達人 教授

    樓主
    發表於 2012-9-24 23:55:40
    限制Linux对外联机的端口简析



    概述:当我们启用了一个daemon时,就可能会造成主机的Port在进行Listen的动作,此刻该daemon就是已经对网络上面提供服务了。


    什么是port:

           网络联机是[双向]的,要达成一条server/client的联机,需要一组Socket pair来建立联机。

           主机端的监听(Listen):主机所启用的 port 其实是由某些网络服务 (program)所启动的。而为了连接上的方便,因此很多服务所开启的 port 是固定的。 www<->80  mail<->25

           客户端的port:是随机产生的,主要是开启>1024以上的端口,这个port也是由某些软件所产生的。



    所谓的【监听】是某个服务程序会一直常驻在内存当中,所以该程序启动的port就会一直存在。至于port在传输过程中的判断,那就由TCP/UDP等通讯协议的表头数据来记录的。

    了解:共65536个port,分成2部分,以1024区分。小于等于1023的端口,需要root身份才能启动,这些port主要用于一些常见的通讯服务。记录在/etc/services里面。对安全真正有危害的是【某些不安全的服务】而不是【开了哪些port】



    观察port:netstat 和 nmap

          netstat:在本机上面以自己的程序监测自己的 port

          nmap:透过网络的侦测软件辅助,可侦测非本机上的其他网络主机,但有违法之虞。系统管理员用来管理系统安全性查核的工具!

          列出在监听的网络服务:netstat -tunl

          列出已联机的网络联机状态:netstat -tun

          删除已建立或在监听当中的联机:netstat -tunp
      

          nmap [扫描类型] [扫描参数] [hosts 地址与范围]

                    使用预设参数扫描本机所启用的port:nmap localhost

                    同时分析TCP/UDP这2个常见的通讯协议:nmap -sTU localhost

                    了解有几部主机活在你的网络当中:nmap -sP 192.168.10.0/24

                    在以上基础上侦测各个主机的启动port:nmap 192.168.10.0/24



    Port的启用与关闭

           stand alone 与 super daemon

           stand alone:就是直接执行该服务的执行档,让该执行文件直接加载到内存当中运作,用这种方式来启动可以让该服务具有较快速响应的优点。通常放置在/etc/init.d/下

           super daemon:用一个超级服务作为总管,以管理一些网络服务。/etc/xinetd.d。响应速度比较慢,可以透过super daemon 额外提供一些管控,例如控制何时启动,何时可以进行联机。


    关闭系统上面的 port 25 步骤:

         1、netstat -tnlp

         2、locate master | grep '/master$'      

         3、rpm -qf /usr/libexec/postfix/master

         4、rpm -qc postfix | grep init

    流程: 找出该服务套件--->rpm查询功能得知服务的作用--->关闭



    启动系统的Telnet

          1、[rpm -qa | grep telnet-server] 以rpm查询看看是否有安装 telnet-server

          2、没有安装,则yum install telnet-server

          3、由于是 super daemon 管控,所以编辑/etc/xinetd.d/telnet这个档案,置[disable = no]重启super daemon。/etc/init.d/xinetd restart

          4、利用 netstat -tulp 察看是否有启动 port 23

    设定开机时启动服务:

           1、如何查阅 portmap 这个程序一开机就执行

                答: chkconfig --list | grep portmap       与runlevel确认一下你的环境与portmap是否启动  

           2、如果开机就执行,如何将他改为开机时不要启动

                答:如果有启动,可透过【chkconfig --level 35 portmap off】来设定开机时不要启动

           3、如何立即关闭这个portmap服务

                答:可以透过【/etc/init.d/portmap stop】来立即关闭它



    常见的必须要存在的系统服务

          acpid:新版的电源管理模块,通常建议开启。

          atd:在管理单一预约命令执行的服务,应该要启动的。

          crond:在管理工作排程的重要服务,请务必启动啊

          iptables:Linux内建的防火墙软件,这个也可以启动啊

          keytables:如果你的键盘非正规的格式时,这个服务的启动获取可以帮助你喔
      

          network:是网络就要有他

          sshd:这个系统预设会启动的,可以让你在远程以文字形态的终端机登入喔

          syslog:系统的登陆文件记录,很重要,务必启动啊

          xinetd:就是那个 super daemon 嘛!所以也要启动啦!

          xfs:用来管理x window字形数据的服务,如果你会需要x window时,这个服务要启动。


    查看主机上面有多少 port 被打开了

          netstat -tunlp         观察已经在监听的port与服务的对应

          netstat -tunp          已建立的联机

          nmap IP                   不在Linux本机上



    如何观察程序

          利用[ps -aux] 或 [top] 都可以,另外,[pstree -p]则可以了解所有程序相依性,而[lsof]则可以察看所有程序所开的档案喔!

    LISTEN的 port 与 daemon 的关系:正在 LISTEN 当中的端口均是由某些(daemon)所启动的,所以要启动端口就得启用某个服务,要了解某个端口是由哪个 daemon 所启动的,就利用 netstat -tulp 来查阅。



    stand alone & super daemon :Linux系统的服务有独立启动(stand alone)及超级服务员(super daemon)两种启动的方式。挂在super daemon底下的服务可以经由super daemon的管控,以加强一些安全功能,不过由于还要经过 super daemon 的管理,所以服务的连接速度上会比stand alone慢一点。

    daemon启动与关闭的scripts与档案放置的目录

            /etc/init.d/        各个daemons的启动与关闭的scripts

            /etc/rc.d/init.d     Red Hat 系统

            /etc/xinetd.d       super daemon的控管参数

    阻断式服务:利用三向交握程序的漏洞,多个client端持续发送tcp封包的联机要求,但却不理会server端的SYN/ACK的封包,导致server端会持续启动很多的port在等待client端的回应,那我们知道一般port有65536个,万一用完了,那系统网络就瘫痪了!所以DDoS会造成系统网络瘫痪问题。另外,由于多个client同时要求,所以网络频宽也会被用光。
    重要聲明:本論壇是以即時上載留言的方式運作,比思論壇對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,讀者及用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,讀者及用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本論壇受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者及用戶發現有留言出現問題,請聯絡我們比思論壇有權刪除任何留言及拒絕任何人士上載留言 (刪除前或不會作事先警告及通知 ),同時亦有不刪除留言的權利,如有任何爭議,管理員擁有最終的詮釋權。用戶切勿撰寫粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。

    手機版| 廣告聯繫

    GMT+8, 2024-11-1 10:37 , Processed in 0.012472 second(s), 17 queries , Gzip On, Memcache On.

    Powered by Discuz! X2.5

    © 2001-2012 Comsenz Inc.

    回頂部