不知不觉本人来北京也已经第三个年头了,从一个Linux小小鸟,开始,2012年我参加了第一份工作,其实现在想想其实我是幸运的,本来求学的时候,就没好好的学Linux,我认为有Cisco知识从上windows和cisco技术就可以有一个好的发展,谁知道命运就是如此,刚进公司没一个月,公司就考虑将以前的项目移植到lamp环境下原因是我们的新主管是一个开源爱好者,在他的带领下,我们话费了3个月的时间将我们的托管服务器和公司内部服务器全部迁移到了Linux平台上,记着当时用的主要是RHEL5.2和CentOS5.3.对于我一个本来Linux就没好好学的人来说,登时傻眼,回想那段时间的经历,可以说是每一天都是透支到身体极限的情况下拖着身体回家找床的。
但今天就老探讨下关于Linux基础安全知识的个人简单办法。(我们今天不说什么大的项目或者牛x的技术)这些对于一些对Linux有段时间理解的人来说可能不算什么但对于一些初入Linux环境的人,可以最起码保证自己的自信,告诉自己弄的服务器是基础安全的。
论Linux下安全:
如果说到Linux安全,当你进入一个黑乎乎的几乎是关着的电脑屏幕前,只写着一个root#的字符初次见她就傻眼了。多数的新手会选择安装x window 其实我也是推荐搭建安装图形界面的,如果您安装了图形界面那么说明你现在已经准备了解Linux或者疑似到了Linux的一些用处和优点。
在命令终端中输入 init 3 你就可以切回到文本界面。
首先,如果你还在用root超级管理员登录,你可以试着创建一个新用户用来进行使用
[[email protected] ~]# useradd -d /home/fdd -c "this is usertest" -G root -s /bin/bash fdd [[email protected] ~]# passwd fdd 更改用户 fdd 的密码 。 新的 密码: 重新输入新的 密码: passwd: 所有的身份验证令牌已经成功更新。
这样我就可以创建一个 fdd的用户他的家目录是 /home/fdd -c后面是备注一些该用户的信息介绍,-G是添加到附属组root当中 -s他的默认shell是/bin/bash
当然有很多人可能会问 用户和用户组大家都知道,但对于/bin/bash是什么呢 这里我不做解释,值告诉你 如果你vim /etc/passwd 将对应行的/bin/bash 修改为 /sbin/nologin 后就会发现 fdd用户无法登陆 即便你使用su - fdd 用root切换也是无法设置。这就是shell的作用 换句话说就是 在/etc/passwd下记录了该Linux系统的所有用户信息,如果我们想要查看所有可以登录的用户 理论也可以这么做
命令: cat /etc/passwd | grep /bin/bash
当然如果你的用户过多你只想知道有多少个可以登录系统的用户数你可以 在原文件后面加入
命令: cat /etc/passwd | grep /bin/bash | wc -l
上面的一些能说明什么?当我在对Linux管理下 用户的安全是非常重要的,到这里我就会突然想,那么我该如何查看现在登录系统的用户连接有多少个呢?
我们可以使用 w 和who命令来查看
23:48:51 up 1:33, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM [email protected] IDLE JCPU PCPU WHAT root pts/0 192.168.1.103 23:14 1.00s 0.10s 0.04s w [[email protected] ~]# who root pts/0 2015-07-08 23:14 (192.168.1.103)
的 我们可以通过命令来查看现在登录系统的用户,注意这里的用户指的是用户连接数,因为在Linux系统当中一个用户可以同时在不同的地方通过不同的方式登录到系统的,这一点是继承了unix的系统,
当然我们可以通过 查看对方使用的 登录类型号来 强制切断该用户的登录链接操作:
命令:pkill -9 -t pts/1
我们不需要去思考该命令到底是什么 只要理解他是用来强制退出指定终端连接号的用户的,前提是执行该命令的用户有相应的权限。
好让我们来回顾下我们当前用户都执行了些什么命令:
命令:history是查看我们当前用户都执行了那些历史命令
说了用户这块我们就不的不去说说目录和文件的权限问题,在Linux下目录和文件的权限3个(不要去考虑特殊权限acl 和SUID和SGID权限)那就是读写执行的权限分别可以用rwx表示也当然我们在设置权限的命令是也会看到用数字来代替 rwx为