稍稍明白点最小权限原则
linux系统的是基于文件的,进程的启动操作都依靠文件系统,一个进程谁来启动的就拥有谁的权限,比如root启动的,那么就拥有root的权限,可以修改任何文件,很可怕。
那么系统漏洞是如何产生的?通常一个进程对应外面的一个或者多个端口,如果知道某个进程有漏洞,就找对应端口,比如ssh对应22,http对应80,https对应443。找到对应端口,然后研究对应端口是什么程序,就知道有什么漏洞,然后直接攻击了。(所以对应端口对外最好看不到使用哪种程序,什么版本,这个还不知道如何做。)如果这个进程被攻破,并且还拥有root权限,那基本就是没救了。所以从这个原理上来讲,进程的权限越小越好,尤其有对外服务端口的。
那么和我们的root登录有什么关系呢,通常用某个用户安装程序,这个程序的权限就是某个用户的。同样在该用户下启动这个程序,那么程序权限就是那个用户。
如果用root启动进程,那就拥有了root权限,这个进程被攻破后,该进程就可以为所欲为了。
当然这个过程没有那么简单,还和每个程序配置有关,也能后期降权运行程序。但至少可以从防止外部入侵角度说明不用一直使用root操作的原因了。其他原因还有,防止误操作,误删文件,误改配置等等方面来看这个问题。。
所以登录linux后需要创建一个普通用户,不要直接使用root,加上sudo权限,安装时使用sudo命令,这些动作对于小白来说,还是有用的。
这应该是就是从对外安全角度看的最小权限原则,其实可能还有文件管理,多用户登录等原因所用的最小权限原则。
疑问
如果从防止外部入侵角度,防火墙本身也是一个进程,如果这个进程问题,如何防控,不用root启动防火墙吗?