重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Linux系统基本操作
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比三水网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式三水网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖三水地区。费用合理售后完善,十余年实体公司更值得信赖。
文件结构图及关键文件功能介绍
Linux文件结构
Linux文件结构图
二级目录
| 目录 | 功能 |
| /bin | 放置的是在单人维护模式下能被操作的指令,在/bin底下的指令可以被root与一般账号所使用 |
| /boot | 这个目录只要在放置开机会使用到的文件,包括 Linux核心文件以及开机选单与开机所需配置的文件等等 |
| /dev | 在Linux系统上,任何装置与接口设备都是以文件的形态存在于这个目录当中的 |
| /etc |
系统主要的配置文件几乎都放在这个目录内,例如人员账号密码各种服务的启动档,系统变量配置等
|
| /home | 这个是系统默认的用户家目录(home directory) |
| /lib | /lib放置的则是在开机时会用到的函式库,以及在/lib或/sbin底下的指令会呼叫的函式库 |
| /media | /media底下放置的是可以移出的装置,包括软盘、光盘、DVD等等装置都挂载于此 |
| /opt | 给第三方协议软件放置的目录 |
| /root | 系统管理员(root)的家目录 |
| /sbin | 放置/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需的指令。 |
| /srv | srv可视为[service]的缩写,是一些网络服务启动之后,这些服务所需要取用的数据目录 |
| /tmp | 这是让一般使用者或是正在执行的程序暂时放置文件的地方 |
文件
账号和权限
系统用户
超级管理员 uid=0
系统默认用户 系统程序使用,从不登录
新建普通用户 uid大于500
/etc/passwd
/etc/shadow
用户管理
权限管理
解析文件权限
文件系统安全
查看权限:ls -l
修改权限:
**chmod **
** chgrp**
设置合理的初始文件权限
很奇妙的UMASK:
umask值为0022所对应的默认文件和文件夹创建的缺省权限分别为644和755
文件夹其权限规则为:777-022-755
文件其权限规则为:777-111-022=644(因为文件默认没有执行权限)
修改UMASK值:
1、直接在命令行下 umask xxx(重启后消失)
2、修改/etc/profile中设定的umask值
系统加固
锁定系统中多余的自建账号
检查shadow中空口令账号
检查方法:
加固方法:
使用命令passwd -l 用户名 锁定不必要的账号
使用命令passwd -u 用户名解锁需要恢复的账号
使用命令passwd 用户名 为用户设置密码
设置系统密码策略
执行命令查看密码策略设置
加固方法:
禁用root之外的超级用户
检测方法:
awk -F ":" '( 1}' /etc/passwd
加固方法:
** passwd -l 用户名**
****
限制能够su为root的用户
查看是否有auth required /libsecurity/pam_whell.so这样的配置条目
加固方法:
重要文件加上不可改变属性
把重要文件加上不可改变属性
Umask安全
SSH安全:
禁止root用户进行远程登陆
检查方法:
加固方法:
更改服务端口:
屏蔽SSH登陆banner信息
仅允许SSH协议版本2
防止误使用Ctrl+Alt+Del重启系统
检查方法:
加固方法:
设置账号锁定登录失败锁定次数、锁定时间
检查方法:
修改账号TMOUT值,设置自动注销时间
检查方法:
cat /etc/profile | grep TMOUT
加固方法:
vim /etc/profile
增加
TMOUT=600 无操作600秒后自动退出
设置BASH保留历史命令的条目
检查方法:
cat /etc/profile | grep HISTSIZE
加固方法:
vim /etc/profile
修改HISTSIZE=5即保留最新执行的5条命令
设置注销时删除命令记录
检查方法:
cat /etc/skel/.bash_logout 增加如下行
rm -f $HOME/.bash_history
这样,系统中的所有用户注销时都会删除其命令记录,如果只需要针对某个特定用户,,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history文件增加相同的一行即可。
设置系统日志策略配置文件
日志的主要用途是 系统审计 、监测追踪和分析。为了保证 Linux 系 统正常运行、准确解决遇到的各种样统问题,认真地读取日志文件是管理员的一项非常重要任务。
UNIX/ Linux 采用了syslog 工具来实现此功能,如果配置正确的 话,所有在主机上发生的事情都会被记录下来不管是好还是坏的 。
检查方法:
cat /etc/profile | grep HISTSIZE
确定syslog服务是否启用
查看syslogd的配置,并确认日志文件是否存在
阻止系统响应任何从外部/内部来的ping请求
加固方法:
echo 1 /proc/sys/net/ipv4/icmp_echo_ignore_all
姓名:黄婷 学号:19020100410 学院:电子工程学院
转自: ;request_id=162848234916780357255732biz_id=0utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-2-103947313.first_rank_v2_pc_rank_v29utm_term=Linux%E7%B3%BB%E7%BB%9Fspm=1018.2226.3001.4449#t8
【嵌牛导读】Linux系统安全隐患及加固措施
【嵌牛鼻子】Linux系统 安全隐患及加固措施
【嵌牛提问】Linux系统如何保护?
【嵌牛正文】
用户账户以及登录安全
删除多余用户和用户组。Linux是多用户操作系统,存在很多种不一样的角色系统账号,当安装完成操作系统之后,系统会默认为未添加许用户组及用户,若是部分用户或是用户组不需要,应当立即删除它们,否则黑客很有可能利用这些账号,对服务器实施攻击。具体保留哪些账号,可以依据服务器的用途来决定。
关闭不需要的系统服务。操作系统安装完成之后,其会在安装的过程当中,会自主的启动各种类型的服务程序内容,对于长时间运行的服务器而言,其运行的服务程序越多,则系统的安全性就越低。所以,用户或是用户组就需要将一些应用不到的服务程序进行关闭,这对提升系统的安全性能,有着极大的帮助。
密码安全策略。在Linux之下,远程的登录系统具备两种认证的形式:即 密钥 与密码认证。其中,密钥认证的形式,主要是将 公钥 储存在远程的服务器之上, 私钥 存储在本地。当进行系统登陆的时候,再通过本地的私钥,以及远程的服务器公钥,进行配对认证的操作,若是认证的匹配度一致,则用户便能够畅通无阻的登录系统。此类认证的方式,并不会受到暴力破解的威胁。与此同时,只需要确保本地私钥的安全,使其不会被黑客所盗取即可,攻击者便不能够通过此类认证方式登陆到系统中。所以,推荐使用密钥方式进行系统登陆。
有效应用su、 sudo 命令。su命令的作用的是对用户进行切换。当管理员登录到系统之后,使用su命令切换到超级用户角色来执行一些需要超级权限的命令。但是由于超级用户的权限过大,同时,需要管理人员知道超级用户密码,因此su命令具有很严重的管理风险。
sudo命令允许系统赋予普通用户一些超级权限,并且不需普通用户切换到超级用户。因此,在管理上应当细化权限分配机制,使用sudo命令为每一位管理员服务其特定的管理权限。
远程访问及登陆认证安全
远程登录应用 SSH 登陆方式。telnet是一类存在安全隐患的登录认证服务,其在网络之上利用明文传输内容,黑客很容易通过结果telnet数据包,获得用户的登陆口令。并且telnet服务程序的安全验证方式存在较大的安全隐患,使其成为黑客攻击的目标。SSH服务则会将数据进行加密传输,能够防止 DNS 欺骗以及IP欺骗,并且传输的数据是经过压缩,在一定程度上保证了服务器远程连接的安全。
文件系统的安全
加固系统重要文件。在Linux系统中,如果黑客取得超级权限,那么他在操作系统里面就不会再有任何的限制地做任何事情。在这种情况下,一个加固的文件系统将会是保护系统安全的最后一道防线。管理员可通过 chattr 命令锁定系统一些重要文件或目录。
文件权限检查与修改。如果操作系统当中的重要文件的权限设置不合理,则会对操作系统的安全性,产生最为直接的影响。所以,系统的运行维护人员需要及时的察觉到权限配置不合理的文件和目录,并及时修正,以防安全事件发生。
安全设定/tmp、/var/tmp、/dev/shm。在该操作系统当中,其用于存放临时文件的目录,主要有两个,分别为/tmp与/var/tmp。它们有个共同特点,就是所有的用户可读可写和执行,这样就对系统产生了安全隐患。针对这两个目录进行设置,不允许这两个目录下执行应用程序。
系统软件安全
绝大多数的服务器遭受攻击是因为系统软件或者应用程序有重大漏洞。黑客通过这些漏洞,可以轻松地侵入服务器。管理员应定期检查并修复漏洞。最常见的做法是升级软件,将软件保持在最新版本状态。这样就可以在一定程度上降低系统被入侵的可能性。
使用下面命令,查看系统是否含有pam_tally2.so模块,如果没有就需要使用pam_tally.so模块,两个模块的使用方法不太一样,需要区分开来。
编辑系统/etc/pam.d/system-auth 文件,一定要在pam_env.so后面添加如下策略参数:
上面只是限制了从终端su登陆,如果想限制ssh远程的话,要改的是/etc/pam.d/sshd这个文件,添加的内容跟上面一样!
编辑系统/etc/pam.d/sshd文件,注意添加地点在#%PAM-1.0下一行,即第二行添加内容
ssh锁定用户后查看:
编辑系统 /etc/pam.d/login 文件,注意添加地点在#%PAM-1.0的下面,即第二行,添加内容
tty登录锁定后查看:
编辑 /etc/pam.d/remote文件,注意添加地点在pam_env.so后面,参数和ssh一致
应邀回答行业问题
Linux系统广泛被应用在服务器上,服务器存储着公司的业务数据,对于互联网公司数据的安全至关重要,各方面都要都要以安全为最高优先级,不管是服务器在云端还在公司局域网内,都要慎之又慎。
如果黑客入侵到公司的Linux服务器上,执行下面的命令,好吧,这是要彻底摧毁的节奏,5分钟后你只能呵呵的看着服务器了,为什么要seek呢?给你留个MBR分区。
dd if=/dev/zero of=/dev/sda bs=4M seek=1
Linux系统的安全加固可分为系统加固和网络加固,每个企业的业务需求都不一样,要根据实际情况来配置。比如SSH安全、账户弱口令安全、环境安全、关闭无用服务、开启防火墙等,已经Centos7为例,简单说下linux系统SSH网络安全加固。
SSH安全
将ssh服务的默认端口22修改为其他端口,并限制root用户登陆,配置firewall允许ssh端口通过。
[root@api ~]#sed -i 's#Port 22#Port 6022#' /etc/ssh/sshd_config
[root@api ~]#echo 'PermitRootLogin no' /etc/ssh/sshd_config
[root@api ~]# firewall-cmd --zone=public --add-port=6022/tcp --permanent
[root@api ~]# firewall-cmd --reload
限制访问ssh的用户和IP
[root@api ~]#echo 'AllowUsers NAME' /etc/ssh/sshd_config
[root@api ~]# echo 'sshd:xxx..x.x:allow' /etc/
hosts.allow
[root@api ~]# systemctl restart sshd
禁止ping测试服务器,禁止IP伪装。
[root@api ~]# echo 1 /proc/sys/net/ipv4/icmp_echo_ignore_all
[root@api ~]# echo nospoof on /etc/host.conf
在Centos7以后iptables将被firewall替代,当然我们还能够使用iptables,首先需要删除firewall后,才能够使用iptables,技术总是在进步的,老的会慢慢被替代。
Linux系统安全加固还有很多,想要继续可以查阅资料。
查看 /etc/passwd 文件查看是否有无用的账号,如果存在则删除,降低安全风险。
操作步骤:
操作步骤:
操作步骤
操作步骤
使用命令 vim /etc/pam.d/su 修改配置文件,在配置文件中添加行。
例如,只允许admin组用户su到root,则添加 auth required pam_wheel.so group=admin 。
【可选】为了方便操作,可配置admin支持免密sudo:在 /etc/sudoers 文件中添加 admin ALL=(ALL) NOPASSWD:ALL
为了防止使用"su"命令将当前用户环境变量带入其它用户,修改/etc/login.defs添加ALWAYS_SET_PATH=yes并保存。
操作步骤
操作步骤:
查看所有服务列表 systemctl list-units --type=service
操作步骤
使用命令 vim /etc/ssh/sshd_config 编辑配置文件。
配置文件修改完成后,重启sshd服务生效(systemctl restart sshd)。
操作步骤
修改/etc/profile 配置文件,添加行 umask 027 , 即新创建的文件属主拥有读写执行权限,同组用户拥有读和执行权限,其他用户无权限。
操作步骤
修改 /etc/profile 配置文件,设置为 TMOUT=600, 表示超时10分钟无操作自动退出登录。
操作步骤
Linux系统默认启用以下类型日志,配置文件为 /etc/rsyslog.conf:
通过上述步骤,可以在 /var/log/history 目录下以每个用户为名新建一个文件夹,每次用户退出后都会产生以用户名、登录IP、时间的日志文件,包含此用户本次的所有操作(root用户除外)
服务器安全加固 - Linux - wubolive - 博客园
Linux服务器评测脚本
Linux系统服务器性能跑分测试脚本
ACL权限设置命令setfacl和getfacl命令
Linux等保加固脚本