Linux安全配置-阿里云开发者社区

开发者社区> 技术小美> 正文

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,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Linux服务器安全配置加固防护方法
本文详细总结了PHP网站在Linux服务器上面的安全配置,包含PHP安全、mysql数据库安全、web服务器安全、木马查杀和防范等,很好很强大很安全。
2406 0
Linux Mysql数据库安全配置
Linux Mysql数据库安全配置目录: 1.修改mysql管理员账号root的密码(2种方法) 2.修改mysql管理员账号root 3.mysql管理员root账号密码遗忘解决办法(2种方法) 4.
1309 0
巧用Recent模块加固Linux安全
众所周知,Linux可以通过编写iptables规则对进出Linux主机的数据包进行过滤等操作,在一定程度上可以提升Linux主机的安全 性,在新版本内核中,新增了recent模块,该模块可...
832 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
4560 0
Shrek之linux安全体系结构图
PS: 听过几次尚观的免费课, 都是Shrek讲的 "网络攻击及安全技巧" ! 收获蛮多~相比第一次的惊讶,至少对 "提权" 有了进一步的了解! 下面是修改过的Shrek的图: 好好努力,好好加油! 关于 Shrek老师讲的那个新的漏洞, 貌似听懂了,就是听到关键的地方听得不太清楚!如果能测试通过,会分享滴喔! 不要为了安全而学安全,也不要一了解到什么漏洞,就尝试着写脚本攻击,不要
873 0
SpringBoot类型安全配置
## 一个使用@Value(${...})的例子 下面是一段简单的服务器配置的代码: ```java @Data @Component public class ServerConfig { /** 是否启用服务 */ @Value("${ali.server.enabled}") private boolean enabled;
3634 0
+关注
4994
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载