关闭

Linux:网络安全与主机基本防护:限制端口, 网络升级与 SELinux

标签: Linux网络安全与主机基本防护限制端口SELinux
705人阅读 评论(1) 收藏 举报
分类:

http://blog.csdn.net/pipisorry/article/details/72123815

系统基本设置

网络设置 (手动设置与DHCP自动取得)

目前的主流网卡为使用以太网络协定所开发出来的以太网卡 (Ethernet),因此我们 Linux 就称呼这种网络接口为 ethN (N 为数字)。 举例来说,机上面有一张以太网卡,因此主机的网络接口就是 eth0 (第一张为 0 号开始)。

新的 CentOS 7 开始对于网卡的编号则有另一套规则,网卡的界面代号现在与网卡的来源有关

  • eno1 :代表由主板 BIOS 内置的网卡
  • ens1 :代表由主板 BIOS 内置的 PCI-E 界面的网卡
  • enp2s0 :代表 PCI-E 界面的独立网卡,可能有多个插孔,因此会有 s0, s1... 的编号~
  • eth0 :如果上述的名称都不适用,就回到原本的默认网卡编号
想要知道你有多少网卡,“ ifconfig -a ”全部列出来即可!此外,CentOS 7 也希望我们不要手动修改配置文件, 直接使用所谓的 nmcli 这个指令来设置网络参数即可。

防火墙简易设置

防火墙其实是一种网络数据的过滤方式,它可以依据你服务器启动的服务来设置是否放行,也能够针对你信任的用户来放行!

由于目前 CentOS 7 的默认防火墙机制为 firewalld, 他的管理界面主要是通过命令行 firewall-cmd 这个详细的指令~

[鸟哥的Linux私房菜:基础学习篇]

皮皮blog



网络安全与主机基本防护

限制联机端口/埠口 (port)

设定了一部 WWW 主机后,当有来自 Internet 的 WWW 要求时,我们的主机就会予以回应,这是因为我们的主机有启用了 WWW 的监听埠口啊!所以,当我们启用了一个 daemon 时,就可能会造成主机的端口在进行监听的动作,此时该 daemon 就是已经对网络上面提供服务了!万一这个 daemon 程序有漏洞,因为他提供了 Internet 的服务,所以就容易被 Internet 上面的 cracker 所攻击了!

什么是 port

  • 服务器端启动的监听埠口所对应的服务是固定的:例如 WWW 服务开启在 port 80 ,FTP 服务开启在 port 21,email 传送开启在 port 25 等等,都是通讯协议上面的规范!

  • 客户端启动程序时,随机启动一个大于 1024以上的埠口:客户端启动的 port 是随机产生的,主要是开启在大于 1024 以上的埠口。这个 port 也是由某些软件所产生的, 例如浏览器、Filezilla 这个 FTP 客户端程序等等。

  • 一部服务器可以同时提供多种服务:所谓的『监听』是某个服务程序会一直常驻在内存当中,所以该程序启动的 port 就会一直存在。 只要服务器软件激活的埠口不同,那就不会造成冲突。当客户端连接到此服务器时,透过不同的埠口,就可以取得不同的服务数据啰。 所以,一部主机上面当然可以同时启动很多不同的服务啊!

  • 共 65536 个 port:由第二章的 TCP/UDP 表头数据中,就知道 port 占用 16 个位,因此一般主机会有 65536 个 port,而这些 port 又分成两个部分,以 port 1024 作区隔:

    • 只有 root 才能启动的保留的 port:在小于 1024 的埠口,都是需要以 root 的身份才能启动的,这些 port 主要是用于一些常见的通讯服务,在 Linux 系统下,常见的协议与 port 的对应是记录在 /etc/services 里面的。

    • 大于 1024 用于 client 端的 port:在大于 1024 以上的 port 主要是作为 client 端的软件激活的 port 。

  • 是否需要三向交握:建立可靠的联机服务需要使用到 TCP 协议,也就需要所谓的三向交握了,如果是非面向连接的服务,例如 DNS 与视讯系统, 那只要使用 UDP 协议即可。

  • 通讯协议可以启用在非正规的 port:我们知道浏览器默认会连接到 WWW 主机的 port 80,那么你的 WWW 是否可以启动在非 80 的其他埠口? 当然可以啊!你可以透过 WWW 软件的设定功能将该软件使用的 port 启动在非正规的埠口, 只是如此一来,您的客户端要连接到你的主机时,就得要在浏览器的地方额外指定你所启用的非正规的埠口才行。 这个启动在非正规的端口功能,常常被用在一些所谓的地下网站啦!^_^。另外, 某些软件默认就启动在大于 1024 以上的端口,如 MySQL 数据库软件就启动在 3306。

  • 所谓的 port 的安全性:事实上,没有所谓的 port 的安全性!因为『Port 的启用是由服务软件所造成的』, 也就是说,真正影响网络安全的并不是 port ,而是启动 port 的那个软件 (程序)! 或许你偶而会听到:『没有修补过漏洞的 bind 8.x 版,很容易被黑客所入侵,请尽快升级到 bind 9.x 以后版本』,所以啰,对安全真正有危害的是『某些不安全的服务』 而不是『开了哪些 port 』才是!因此,没有必要的服务就将他关闭吧! 尤其某些网络服务还会启动一些 port 哩!另外,那些已启动的软件也需要持续的保持更新喔!

埠口的观察: netstat, nmap

netstat [Linux:Linux常用网络指令 ]

# nmap [扫瞄类型] [扫瞄参数] [hosts 地址与范围]
选项与参数:
[扫瞄类型]:主要的扫瞄类型有底下几种:
    -sT:扫瞄 TCP 封包已建立的联机 connect() !
    -sS:扫瞄 TCP 封包带有 SYN 卷标的数据
    -sP:以 ping 的方式进行扫瞄
    -sU:以 UDP 的封包格式进行扫瞄
    -sO:以 IP 的协议 (protocol) 进行主机的扫瞄
[扫瞄参数]:主要的扫瞄参数有几种:
    -PT:使用 TCP 里头的 ping 的方式来进行扫瞄,可以获知目前有几部计算机存活(较常用)
    -PI:使用实际的 ping (带有 ICMP 封包的) 来进行扫瞄
    -p :这个是 port range ,例如 1024-, 80-1023, 30000-60000 等等的使用方式
[Hosts 地址与范围]:这个有趣多了,有几种类似的类型
    192.168.1.100  :直接写入 HOST IP 而已,仅检查一部;
    192.168.1.0/24 :为 C Class 的型态,
    192.168.*.*    +   :嘿嘿!则变为 B Class 的型态了!扫瞄的范围变广了!
    192.168.1.0-50,60-100,103,200 :这种是变形的主机范围啦!很好用吧!

埠口与服务的启动/关闭及开机时状态设定

从第二章的数据我们就知道,其实 port 是由执行某些软件之后被软件激活的。所以要关闭某些 port 时,那就直接将某个程序给他关闭就是了!关闭的方法你当然可以使用 kill,不过这毕竟不是正统的解决之道,因为 kill 这个指令通常具有强制关闭某些程序的功能,但我们想要正常的关闭该程序啊! 所以,就利用系统给我们的 script 来关闭就好了啊。

一般传统的服务有哪几种类型?stand alone 与 super daemon

在一般正常的 Linux 系统环境下,服务的启动与管理主要有两种方式:

  • Stand alone顾名思义,stand alone 就是直接执行该服务的执行档,让该执行文件直接加载到内存当中运作, 用这种方式来启动可以让该服务具有较快速响应的优点。一般来说,这种服务的启动 script 都会放置到 /etc/init.d/ 这个目录底下,所以你通常可以使用:『 /etc/init.d/sshd restart 』之类的方式来重新启动这种服务;

  • Super daemon用一个超级服务作为总管,来统一管理某些特殊的服务。在 CentOS 6.x 里面使用的则是 xinetd 这个 super daemon 啊!这种方式启动的网络服务虽然在响应上速度会比较慢, 不过,可以透过 super daemon 额外提供一些控管,例如控制何时启动、何时可以进行联机、 那个 IP 可以连进来、是否允许同时联机等等。通常个别服务的配置文件放置在 /etc/xinetd.d/ 当中,但设定完毕后需要重新以『 /etc/init.d/xinetd restart 』重新来启动才行!

[基础学习篇]

如何关闭系统上面的 port 111呢?最简单的作法就是先找出那个 port 111 的启动程序喔!

[root@www ~]# netstat -tnlp | grep 111
tcp        0      0 0.0.0.0:111    0.0.0.0:*       LISTEN  990/rpcbind
tcp        0      0 :::111         :::*            LISTEN  990/rpcbind
# 原来用的是 rpcbind 这个服务程序!

[root@www ~]# which rpcbind
/sbin/rpcbind
# 找到档案后,再以 rpm 处理处理

[root@www ~]# rpm -qf /sbin/rpcbind
rpcbind-0.2.0-8.el6.x86_64
# 找到了!就是这个软件!所以将他关闭的方法可能就是:

[root@www ~]# rpm -qc rpcbind | grep init
/etc/rc.d/init.d/rpcbind
[root@www ~]# /etc/init.d/rpcbind stop

安全性考虑-关闭网络服务端口

1> 找出目前系统上面正在运作中的服务,并且找到相对应的启动脚本 (在 /etc/init.d 内的档名之意)。利用 netstat -tunlp 即可找到!

写个脚本关闭

2>

1. 可以通过"netstat -anp" 来查看哪些端口被打开。
2. 然后可以通过"lsof -i:$PORT"查看应用该端口的程序($PORT指对应的端口号)。或者你也可以查看文件/etc/services,从里面可以找出端口所对应的服务。
(注:有些端口通过netstat查不出来,更可靠的方法是"sudo nmap -sT -O localhost")
3. 若要关闭某个端口,则可以:
1)通过iptables工具将该端口禁掉,如:
"sudo iptables -A INPUT -p tcp --dport $PORT -j DROP"
"sudo iptables -A OUTPUT -p tcp --dport $PORT -j DROP"   
2)或者关掉对应的应用程序,则端口就自然关闭了,如:
"kill -9 PID" (PID:进程号)
如:    通过"netstat -anp | grep ssh"
有显示:    tcp 0 127.0.0.1:2121 0.0.0.0:* LISTEN 7546/ssh
则:    "kill -9 7546"
(可通过"chkconfig"查看系统服务的开启状态)

from: http://blog.csdn.net/pipisorry/article/details/72123815

ref: [鸟哥的Linux私房菜:服务器架设篇]


0
0
查看评论

Linux主机安全防护系列(一)ssh配置

SSH安全思考与配置
  • php521php
  • php521php
  • 2015-03-27 16:53
  • 1049

第7章 网络安全与主机基本防护:限制端口,网络升级与SELinux

1. 网络封包联机进入主机的流程
  • niuzhihuan
  • niuzhihuan
  • 2014-11-03 18:26
  • 381

网络安全与主机基本防护:限制端口、网络升级与SELinux

Linux内建的2个防火墙机制(第1、2层过滤): 1:封包过滤式的netfilter防火墙 2:软件管控的TCP Wrappers防火墙========================================封包过滤防火墙:IP Filtering或Net Filter Net Fi...
  • qq_34983808
  • qq_34983808
  • 2017-09-11 12:24
  • 102

第七章、网络安全与主机基本防护: 限制端口, 网络升级与 SELinux

通过第一篇的锻炼之后,现在你应该已经利用 Linux 连上 Internet 了。但是你的 Linux 现在恐怕还是不怎么安全的。 因此,在开始服务器设定之前,我们必须要让你的系统强壮些!以避免被恶意的 cracker 所攻击啊!在这一章当中, 我们会介绍封包的流向,然后根据该流向来制订系统强化的流...
  • mybluetiankong
  • mybluetiankong
  • 2014-03-04 07:53
  • 2957

46.网络安全与主机基本防护:限制端口、网络升级与 SELinux

1.数据包进入主机的流程 CentOS 的 yum 软件更新,镜像站点使用的原理 yum 的功能 挑选特定的镜像站点:修改yum 配置文件与清楚yum 缓存 5.限制端口连接 ...
  • enlyhua
  • enlyhua
  • 2017-06-03 16:41
  • 168

鸟哥的Linux私房菜(服务器)- 第七章、网络安全与主机基本防护: 限制端口, 网络升级与 SELinux

第七章、网络安全与主机基本防护: 限制端口, 网络升级与 SELinux 最近更新日期:2011/07/21 通过第一篇的锻炼之后,现在你应该已经利用 Linux 连上 Internet 了。但是你的 Linux 现在恐怕还是不怎么安全的。 因此,在开始服务器设定之...
  • GarfieldEr007
  • GarfieldEr007
  • 2016-02-25 12:45
  • 1122

linux网络安全

一、安装Centos 二、Linux网络网络环境设置 a.配置linux与客户机相连通 b.配置linux上网 三、Yum详解 yum 的基本操作 a.使用 yum 安装新软件 yum install –y Software b.使用 yum 更新软件 yum update –...
  • u013013553
  • u013013553
  • 2015-04-02 14:06
  • 1277

第七章、网络安全与主机基本防护

1. 封包进入主机的流程 那么现在,假设你的主机是 WWW 服务器,透过底下的图标,网络封包如何进入你的主机呢? 经过防火墙的分析: 1)封包过滤防火墙:IP Filtering 或 Net Filter 要进入 Linux 本机的封包都会先通过 Linux 核心的预设防火墙,就是称为 ...
  • andybegin
  • andybegin
  • 2013-04-19 04:13
  • 513

网络安全和机器学习:准确的特征可通向成功

网络安全和机器学习:准确的特征可通向成功   原文地址:http://www.computerworld.com/article/2947617/data-analytics/cybersecurity-and-machine-learning-how-selecting-the-ri...
  • xinxing__8185
  • xinxing__8185
  • 2015-09-12 16:57
  • 2263

网络信息安全及防范策略

电子政务是信息时代政府工作和管理方式的一次重大变革,与传统政府相比,电子政务使政府运作更为公开透明,信息资源利用更加充分合理,大大增强了政府的服务功能,提高了办事效率,降低了管理成本。但与此同时,电子政务的全面推行也使政府信息面临着各种各样的安全问题,如网站遭遇黑客攻击、网上信息泄密、数据丢失、病毒...
  • guochao0
  • guochao0
  • 2017-03-02 17:26
  • 528
    个人资料
    • 访问:3642795次
    • 积分:30698
    • 等级:
    • 排名:第194名
    • 原创:569篇
    • 转载:30篇
    • 译文:5篇
    • 评论:316条
    Welcome to 皮皮blog~

    博客专栏
    最新评论