Linux安全配置

简介:
由于Linux的开源,使得Linux强大功能的背后,总是有些不尽人意的地方,为了使Linux达到一个最安全的程度,还要不断的来对Linux配置要下一番功夫。
 
  所以一般要注意主机的包漏洞修补,放火墙的设置,关闭危险服务(端口)以及每日的日志分析.
 
再这里我们以端口来讲述一下安全方面的问题
 
什么是端口
  一台主机的端口可以分为监听端口与随机取用的高级端口.所谓监听端口就是主机开启了哪些服务,那么这个服务会在Linux系统里启用一个端口来监听客户端的请求.例如FTP服务器,就会开放21号端口,这个端口会一直启用,直到FTP服务关闭为止.所谓随机取用的高级端口就是Linux要向某个主机请求服务时,Linux主机需要启用一个端口来对外连接,那么端口号是多少?Linux会随机取用一个未被使用且端口号大于1024的端口进行连接.
 
    所以server/Client之间的数据传送其实就是端口与端口之间的传送.
 
总共有多少端口,哪些是保留端口
 
     端口编号是由1-65535组成,所以会有65535个端口.一般而言,只有root才可以开启1-1023一内的端口,这些端口就是特殊抟口,用于保留给系统使用.至于大于1024的端口,除了给系统随机取用作为连接需求之外,也可以用来服务的监听之用.
 
    如果1-1023的端口的程序被入侵,那将表示入侵者拥有root的权限,是因为只有root才可以开启1-1023一内的端口.这个时候就要注意主机的安全了.
 
    在Linux中保留端口与它所对应的服务其实已经有了一个对照表,那就是/etc/services文件,可以使用netstat -n以数值方式显示连接状态,使用netatst -tl可以显示当前正在监听的服务名称. /etc/services文件也是某些端口启动时设置端口的重要依据. 
 
     要了解所谓的端口与服务对于安全的关系:真正影响网络安全的并不是端口,而是启动端口的服务.

   所以真正的危害是某些不安全的服务而不是开放的端口.基本上,如果没有必要,就关掉一些用不到的端口,而且服务的版本要持续更新.
 
如何查看端口
 
1.需要知道主机当前开了多少端口?
2.了解服务跟端口对应的文件是那一个?/etc/services
 
介绍查看主机端口最常用的命令:

netstat:在本机上检查自己的程序检测端口,没有危险
nmap:在本机上以特殊的检测程序检测自己,可能会违法
 
关闭或启动一个端口
 
    要开或关闭一个端口,只需要开启或关闭一个服务即可.所以,当检测完端口后,接下来就是要找出端口所对应的服务,将该服务关掉,就会把端口关掉.
 
设置开机时启动服务的方法
 
    如果以文字方式登录,文字界面的run-level为3,所以就在/etc/rc.d/rc3.d里可以找到服务的启动参数,就是以S开头的文件.如果不要启动一些服务,就将服务对应的文件(以S开头的文件)删除即可.
 
    一般情况下不需要手工删除文件,Linux一般为我们提供了程序可以完成:

    ntsysv
    setup

    是不是要将所有的Linux默认的服务关闭?因为系统有很多服务是一定要启动的,否则反而变的不安全.

以下列出一些完全没有对外开放端口,但却是系统必须的服务,这些服务不要关闭.
 
atd:在例行命令里提到的,只执行一次的预约执行任务,务必启动
cron:在例行命令里提到的,循环执行的命令,务必启动
iptables:防火墙,无论如何,先启动它
keytables:设置键盘上的字母格式,当然需要读入,否则如何控制
network:网络功能
random:快速使系统在随即时间内保存到映象文件,对系统相当重要,因为在开机之后,系统回迅速回复到关        机之前的状态
syslog:在系统日志文件提过,是相当重要的文件,务必启动
xinetd:服务器管理器super deamon,是必须启动的服务之一
xfs:如果使用run-level的图形界面,这个必须启动
 
关闭所有对外开放的端口
 
    在装完Linux后,就要将不必要的程序或服务关闭,最重要的是将对外开放的端口先关闭,需要的时候在开启.如果要假设服务器,可以逐个开启这些端口.
 
    1.使用ntsysv设置开机时启动哪些服务

      一般只选择:atd,cron,iptables,keytables,network,random,syslog,xinetd,xfs(如有图形界面)

     2.重新启动

      reboot

     3.查看当前开启了多少端口

      netstat -an








本文转自redking51CTO博客,原文链接:http://blog.51cto.com/redking/15569 ,如需转载请自行联系原作者



相关文章
|
22天前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
42 0
Vanilla OS:下一代安全 Linux 发行版
|
15天前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
44 9
|
17天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
34 5
|
3月前
|
网络协议 安全 Linux
如何配置Linux端的ftp?
如何配置Linux端的ftp?
151 64
|
2月前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
48 2
|
2月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
322 3
|
2月前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
2月前
|
运维 网络协议 安全
Linux安全运维--一篇文章全部搞懂iptables
Linux安全运维--一篇文章全部搞懂iptables
45 1
|
3月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
3月前
|
Linux 编译器 开发工具
快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)
这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。
179 1