黑客竟然找到我头上了?
其实事情已经过去很久了,是博主在大二时候的事,因为经常参加一些比赛,主要是部署参加比赛的作品。突然有一天,打开云服务器,竟然所有的文件都不能用了,每个文件都是相同的内容,说让我给这个钱包转比特币。查了查才知道被黑客勒索了。这是真事
当时心里想:幸亏上面没有重要的东西
其实我挺开心的,哈哈,竟然这么幸运能被黑客给勒索,竟然能被黑客给盯上,也是很幸福呀。
由于以前没有安全的意识,不知道你是否和我一样:
- 1、Linux内核安全模块关闭;
- 2、防火墙关闭,允许所有的数据报通过;
- 3、为了方便,一直使用root超级用户操作;
- 4、root超级用户的密码超级简单,是123456级别的。
现在有了安全的意识,想象一下真的可怕,下面通过这篇文章来简单的聊一聊个人怎么去做
如果这篇文章对你有用,别忘记点个赞,评论一下哦。
文章目录
- 黑客竟然找到我头上了?
- 一、前言
- (一)概述
- (二)我为什么喜欢Linux?
- (三)夸一夸Deepin版本
- 二、言归正传,开始过五关、斩六将
- (一)防止猜测攻击
- 1、涨知识环节:什么是猜测攻击
- 2、设置口令最小长度和最短使用时间
- (1)设置口令最小长度
- (2)设置最短使用时间
- (二)防止用户离开忘记注销账户带来的隐患
- 1、设置用户超时注销
- 2、测试
- 3、解决环境遍历可更改的问题
- (三)防止黑客利用系统重要文件
- 1、概念
- 2、实战
- 3、测试
- 4、反例测试
- (四)防止黑客利用远程访问来搞事情
- 1、概念
- 2、实战
- 3、测试
- (五)防止黑客利用Shell命令记录来搞鬼
- 1、涨知识了(历史记录的三种查询方式)
- 2、实战
- 3、测试
- (六)注销时删除命令记录
- (七)防止黑客利用超级用户的权利干坏事
- (八)降低黑客扫描到端口号的几率
- (九)防止黑客死亡之ping
- 1、涨知识ing(何为死亡之ping?)
- 2、防止其他主机ping本机
- 3、测试
- (十)防止被黑客登录时看到系统相关信息
- 1、实战模拟黑客远程登录
- 2、实战
- (1) /etc/issue文件
- (2)/etc/motd文件
- (3)/etc/issue.net文件
一、前言
(一)概述
Linux的发行版本有很多,
手指头加上脚趾头也数不过来
。至于为什么会造成这么多的发行版本,是因为Linux的内核是开源的,人人都可以开发出属于自己的Linux版本,关注我,下篇文章就带你开发自己的Linux版本
。目前已有多种基于GNU/Linux的操作系统,例如Debian、SuSE、 Gentoo、 RedHat 和Mandriva
。其中Debian是-一个广受称道、技术先进且有良好支持的发行版;而基于Debian的Ubuntu是一个自由、开源的操作系统,且有自己的发行版(每六个月发行一版),以用户为核心,简单易用(
[能用]就行
),承诺对每个发行版有18个月的安全升级支持。Ubuntu 自带最新版的Gnome桌面,拥有大量的服务和桌面应用程序。Ubuntu 十分注重系统的安全性,它采用sudo 工具
,所有与系统相关的任务均使用此指令,并输人密码;比起传统以登人系统管理员账号进行管理工作有更佳的安全性。
下图是我翻遍百度和谷歌找到的一个比较全
,比较高清
的一个Linux家族族谱图,请放大
看哦。很漂亮
(二)我为什么喜欢Linux?
本文章选择在Deepin下远程在虚拟机中安装的Centos7的Linux发行版
,带你浪迹天涯
。因为我喜欢在Deepin下进行工作
,但是服务器版本比较喜欢Centos系列的,从高一时(2014年)的Centos5.x开始接触的Linux,,到现在(2020)我大三了,已经有了Centos8.x版本的。一直对Centos系列念念不忘,也是Centos的小粉丝一枚。
(三)夸一夸Deepin版本
在这里不得不夸一夸Deepin这个发行版本,真的太赞了:
真的太方便,太好使了,自从我换到Linux下,工作效率也提高了很多(个人意见而已,如果得罪了您,请尽情的喷我吧,多评论评论,哈哈,说着玩呢,不要介意,但是真的好喜欢Linux
),但是Windows下的一些软件是不能使用的。
如果我打开一个Mysql:
1、在windows下:开机—点点点—再点点点—终于开启了
2、在Deepin下:直接一个CTRL+ALT+T
,调出来终端
直接输入sudo docker start mysql57
,哈哈,感觉人生到达了巅峰,好爽,好痛快呀。这是我使用Docker安装的Mysql。
二、言归正传,开始过五关、斩六将
虽然攻击是不可避免的,但是可以防御或者说预防,有一句话不怕一万,就怕万一
,很合适。
有一次我的阿里云服务器,被黑客勒索了,给我要比特币。
图是百度的找的一个,可以忽略,看看就好,不要在意,重要的是文章的内容,当时没来得及留图
因为是个人的服务器,没有太大的价值,里面东西也没有重要的,防火墙关闭了,Linux内核机制也被我关掉了,root的密码也是很简单的。被黑客勒索,不亏。
(一)防止猜测攻击
1、涨知识环节:什么是猜测攻击
如果你没系统的学过《网络安全》这门课程或者相关的课程的话,可能不知道具体的原理。有很多种方式,下面这是借鉴的百度百科的:
(1) 字典攻击
因为多数人使用普通词典中的单词作为口令,发起词典攻击通常是较好的开端。词典攻击使用一个包含大多数词典单词的文件,用这些单词猜测用户口令。使用一部 1万个单词的词典一般能猜测出系统中70%的口令。在多数系统中,和尝试所有的组合相比,词典攻击能在很短的时间内完成。
(2) 强行攻击
许多人认为如果使用足够长的口令,或者使用足够完善的加密模式,就能有一个攻不破的口令。事实上没有攻不破的口令,这只是个时间问题。如果有速度足够快的计算机能尝试字母、数字、特殊字符所有的组合,将最终能破解所有的口令。这种类型的攻击方式叫强行攻击。使用强行攻击,先从字母a开始,尝试aa、ab、 ac等等,然后尝试aaa、aab、aac ……。
攻击者也可以利用分布式攻击。如果攻击者希望在尽量短的时间内破解口令,他不必购买大量昂贵的计算机。他会闯入几个有大批计算机的公司并利用他们的资源破解口令。
(3)NTCrack
NTCrack是UNIX破解程序的一部分,但是在NT环境下破解。NTCrack与UNIX中的破解类似,但是NTCrack在功能上非常有限。它不象其他程序一样提取口令哈希,它和NTSweep的工作原理类似。必须给NTCrack一个user id和要测试的口令组合,然后程序会告诉用户是否成功。
(4)PWDump2
PWDump2不是一个口令破解程序,但是它能用来从SAM数据库中提取口令哈希。L0phtcrack已经内建了这个特征,但是PWDump2还是很有用的。首先,它是一个小型的、易使用的命令行工具,能提取口令哈希;其次,很多情况下L0phtcrack的版本不能提取口令哈希。如SYSTEM是一个能在NT下运行的程序,为SAM数据库提供了很强的加密功能,如果SYSTEM在使用,L0phtcrack就无法提取哈希口令,但是PWDump2 还能使用;而且要在windows2000下提取哈希口令,必须使用PWDump2,因为系统使用了更强的加密模式来保护信息。
2、设置口令最小长度和最短使用时间
口令是系统中认证用户的主要手段
,系统安装时默认
的口令最小长度通常为5
,但为保证口令不易被猜测攻击
,可增加口令的最小长度,例如至少为8
。为此,需修改
文件/etc/login. defs
中参数PASS_MIN_LEN
。同时应限制口令使用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS
。具体步骤如下。
(1)设置口令最小长度
可以通过grep过滤一下,查看出:
PASS_MIN_LEN
默认是5
[root@truedei-centos ~]# cat /etc/login.defs |grep PASS_MIN_LEN
# PASS_MIN_LEN Minimum acceptable password length.
PASS_MIN_LEN 5
[root@truedei-centos ~]#
[root@truedei-centos ~]#
进入修改
[root@truedei-centos ~]# vim /etc/login.defs
如果没有权限的话,请使用root用户进行修改
[root@truedei-centos ~]# ll /etc/login.defs
-rw-r--r--. 1 root root 2028 11月 4 2016 /etc/login.defs
[root@truedei-centos ~]#
如果配置内容太多,可以使用?
或者/
进行查询:
如果你感觉还很陌生,可以看一下我的这篇文章:vi/vim虐我千百遍,我待vi/vim如初恋
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r73xnl79-1589375863754)(/media/truedei/文档/大学/CSDN/Linux&Shell&服务/Linux操作系统安全配置.assets/1589362014642.png)]
修改成想修改的8
:
保存即可。
(2)设置最短使用时间
口令最短使用时间是由
PASS_MIN_DAYS
参数决定的,所以要修改PASS_MIN_DAYS
参数。单位:
天
可以看到默认值为
0
,则永远不会过期
[root@truedei-centos ~]# cat /etc/login.defs |grep PASS_MIN_DAYS
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
PASS_MIN_DAYS 0
[root@truedei-centos ~]#
本次修改的是30
天过期:
(二)防止用户离开忘记注销账户带来的隐患
如果用户离开时忘记注销账户,则可能给系统安全带来隐患。
1、设置用户超时注销
可通过
修改/etc/profile文件
,保证账户在一 段时间没有操作后,自动从系统注销。用vim等编辑器打开并编辑文件/etc/profile,在/etc/profile
文件中增加一行“TMOUT=600
”,则所有用户将在600秒无操作后自动注销。
2、测试
如果当场想测试,可以修改成30秒等
:
然后生效一下:
[root@truedei-centos ~]# source /etc/profile
[root@truedei-centos ~]#
测试结果:
3、解决环境遍历可更改的问题
不过这样还是不安全,因为现在的这个变量是可以更改的:
[root@truedei-centos ~]#
[root@truedei-centos ~]# echo $TMOUT #原来的时间
30
[root@truedei-centos ~]#
[root@truedei-centos ~]#
[root@truedei-centos ~]# TMOUT=600 #更改值
[root@truedei-centos ~]#
[root@truedei-centos ~]# echo $TMOUT #更改之后的
600
[root@truedei-centos ~]#
解决环境变量可更改的问题:
加上一句
readonly TMOUT
即可
[root@truedei-centos ~]#
[root@truedei-centos ~]# cat /etc/profile |grep TMOUT
export TMOUT=600
readonly TMOUT
[root@truedei-centos ~]#
[root@truedei-centos ~]#
再次测试:
说明:这种方式是不可擦除的,就算你删除了之后,对于当前的shell也是不行的,必须重新登录即可
[root@truedei-centos ~]# vim /etc/profile
[root@truedei-centos ~]#
[root@truedei-centos ~]# cat /etc/profile |grep TMOUT
export TMOUT=600
readonly TMOUT
[root@truedei-centos ~]#
[root@truedei-centos ~]# echo $TMOUT
600
[root@truedei-centos ~]#
[root@truedei-centos ~]# TMOUT=700
[root@truedei-centos ~]# echo $TMOUT
700
[root@truedei-centos ~]#
[root@truedei-centos ~]#
[root@truedei-centos ~]# source /etc/profile
[root@truedei-centos ~]#
[root@truedei-centos ~]# echo $TMOUT
600
[root@truedei-centos ~]#
[root@truedei-centos ~]# TMOUT=700
bash: TMOUT: 只读变量
[root@truedei-centos ~]#
(三)防止黑客利用系统重要文件
1、概念
防止黑客利用系统重要文件捣鬼的话,可以禁止访问重要的文件。
对系统中的某些关键性文件如
/etc/services
,/etc/passwd
,/etc/shadow
等,可以采取修改这些文件的属性,防止意外修改和被普通用户查看。
2、实战
例如我系统中有一个脚本,是很重要的:
[root@truedei-centos ~]# touch /etc/ceshi.sh
[root@truedei-centos ~]#
[root@truedei-centos ~]# ll /etc/ceshi.sh
-rw-r--r-- 1 root root 0 5月 13 06:20 /etc/ceshi.sh
[root@truedei-centos ~]#
1、先改变文件的权限为600
:
如果不懂的同学,可以看一下,我写的这个文章:Linux权限管理(用户权限、用户组权限、文件权限、目录权限) ,为了减小篇幅这里就不在啰嗦了
[root@truedei-centos ~]# chmod 600 /etc/ceshi.sh
[root@truedei-centos ~]#
[root@truedei-centos ~]# ll /etc/ceshi.sh
-rw------- 1 root root 0 5月 13 06:20 /etc/ceshi.sh
[root@truedei-centos ~]#
[root@truedei-centos ~]# useradd zhenghui
[root@truedei-centos ~]#
2、保证文件的属主为root,然后还可以将其设置为不可改变:
[root@truedei-centos ~]# chattr +i /etc/ceshi.sh
3、测试
为了好测试,我新建了一个用户
zhenghui
[root@truedei-centos ~]# useradd zhenghui
[root@truedei-centos ~]#
[root@truedei-centos ~]# chown zhenghui.zhenghui /etc/ceshi.sh
chown: 正在更改"/etc/ceshi.sh" 的所有者: 不允许的操作
[root@truedei-centos ~]#
[root@truedei-centos ~]# ll /etc/ceshi.sh
-rw------- 1 root root 0 5月 13 06:20 /etc/ceshi.sh
[root@truedei-centos ~]#
4、反例测试
[root@truedei-centos ~]# touch /etc/ceshi2.sh
[root@truedei-centos ~]#
[root@truedei-centos ~]# chown zhenghui.zhenghui /etc/ceshi2.sh
[root@truedei-centos ~]#
[root@truedei-centos ~]# ll /etc/ |grep ceshi
-rw-r--r-- 1 zhenghui zhenghui 0 5月 13 06:27 ceshi2.sh
-rw------- 1 root root 0 5月 13 06:20 ceshi.sh
[root@truedei-centos ~]#
(四)防止黑客利用远程访问来搞事情
1、概念
在开发中,我们总会使用到linux,而一般我们都会使用securtcrt或者xshell等软件进行远程登录,这样虽然会给我们带来很多便捷,但是同样会存在一定的风险。有很多人专门通过重复的扫描试图破解我们的linux开发机,从而获取免费的“肉鸡”。因此我们可以通过设置hosts.allow和hosts.deny文件来使我们个人的linux开发机更安全。
2、实战
在Ubuntu和Centos中可通过
/etc/hosts.allow
和/etc/hosts.deny
这两个文件允许
或禁止
远程主机对本地服务的访问。通常的做法如下。
如果配置错的话,目前我能想到的办法就只有重装系统了,别问我为什么知道
可以看到:
[root@truedei-centos ~]# ll /etc/hosts.*
-rw-r--r--. 1 root root 370 6月 7 2013 /etc/hosts.allow
-rw-r--r--. 1 root root 460 6月 7 2013 /etc/hosts.deny
[root@truedei-centos ~]#
1、修改/etc/hosts.deny
:
修改成全部拒绝即可
编辑
[root@truedei-centos ~]# vim /etc/hosts.deny
修改如下:
意思就是拒绝所有
ALL:ALL@ALL
如果你退出了当前的远程shell,会发现不能远程了:
truedei@truedei:~$ ssh root@192.168.9.222
ssh_exchange_identification: read: Connection reset by peer
truedei@truedei:~$
好难呀,还好我是虚拟机
我们配置允许的配置文件/etc/hosts.allow
下图可以看到我的某一个网卡的ip是192.168.9.108,那么就修改成只允许我这个ip访问ssh服务吧
3、测试
这就很激动了
(五)防止黑客利用Shell命令记录来搞鬼
1、涨知识了(历史记录的三种查询方式)
为了模拟黑客操作,我远程到了我的阿里云服务器上
方法1.↑↓
键:
↑
,向前查找(更早输入的命令);
↓
,向后查找(更新输入的命令);
方法2.history
命令:
显示近期输入的1000条命令,这些命令,存储在~/.bash_history文件中;
如果想要改变这个值的大小,直接为环境变量HISTSIZE赋值,如:HISTSIZE=2000;
方法3.ctrl+r
搜索:
在提示符后面,输入,要搜索的关键字:
(reverse-i-search)`’:sed
就会自动联想出,包含此关键字的历史命令;
例如我输入了html
,就会联想到我的某一次的操作:
然后回车就可以调用
通过cat /etc/profile |grep HIS
可以看到默认为1000
2、实战
其实这些历史命令被藏在了用户的目录下:
[root@truedei-centos ~]# [root@truedei-centos ~]# cat ~/.bash_history
我们可以通过修改/etc/profile
保证所有用户的历史命令,也可以通过用户的环境变量来修改。
[root@truedei-centos ~]#
[root@truedei-centos ~]# vim /etc/profile
修改内容如下:
把里面的HISTSIZE=1000修改成想要修改的值即可
HISTSIZE=30
3、测试
重新登录一下,重新执行以下,发现只有近30条的历史命令了
(六)注销时删除命令记录
在Linux中用户注销时会执行一个文件,文件是/home/用户名/.bash_logout
编辑.bash_logout
:
[root@truedei-centos ~]#
[root@truedei-centos ~]# vim ~/.bash_logout
[root@truedei-centos ~]#
因为此文件执行的shell命令,所以可以插入一下,删除的命令rm -r ~/.bash_history
:
[root@truedei-centos ~]#
[root@truedei-centos ~]# cat ~/.bash_logout
rm -r ~/.bash_history
[root@truedei-centos ~]#
但是会出现一个问题,每次都会询问你,是否删除。
解决办法:
在命令前面加上
/
的意思是强制执行,很好使的,但是自己要注意分寸哦
\rm -r ~/.bash_history
(七)防止黑客利用超级用户的权利干坏事
你是否听过周杰伦的《告白气球》,其中有一个歌词是拥有你就拥有全世界
,拿来形容root用户太合适了:
root是所有Linux系统保护的重点,由于它权力无限,因此最好不要轻易授权超级用户。但有些程序的安装和维护工作要求必须有超级用户权限,在这种情况下,可以利用其他工具让这类用户有部分超级用户权限。Sudo就是这类工具。
Sudo程序允许- 般用户经过组态设定后,以用户自己的密码再登录一次, 取得超级用户权限,但只能执行有限的几条指令,例如,应用Sudo后,可以让管理磁带备份的管理人员每天按时登录到系统中,取得超级用户权限去执行文档备份工作,但却没有特权去作其他只有超级用户
才能做的工作。Sudo不但限制了用户的权限,而且还将每次使用Sudo所执行的指令记录下来,不管该指令的执行是成功还是失败。从Sudo的日志中,可以追踪到谁做了什么以及改动了系统的哪些部分。
(八)降低黑客扫描到端口号的几率
拿ssh来说:更改SSH服务的端口号
ssh服务的配置文件:/etc/ssh/sshd_config
将ssh的Port
改为1000以上的端口,以便降低端口被扫描的几率。
[root@truedei-centos ~]# cat /etc/ssh/sshd_config |grep Port
#Port 22
#GatewayPorts no
[root@truedei-centos ~]#
(九)防止黑客死亡之ping
1、涨知识ing(何为死亡之ping?)
一般玩电脑的对这个ping命令
很熟悉。
首先说一下什么是ping。
ping是windows和linux自带的一种命令工具
。一般是用来检测网络是否通畅,是否存在网络连接问题等。
那怎样运用呢?
以WinXP为例,在一种叫做命令提示符的窗口中运行。(在Win9x中叫DOS窗口)单击“开始”,点击“运行”,输入“CMD”,打开命令提示符。
先说几个简单的。
-
1.ping自己的主机IP.
-
例如IP地址为:
192.168.9.222
。则执行命令ping 192.168.9.222
。如果网卡安装配置没有问题,则应有类似下列显示: -
[root@truedei-centos ~]# ping 192.168.9.222 PING 192.168.9.222 (192.168.9.222) 56(84) bytes of data. 64 bytes from 192.168.9.222: icmp_seq=1 ttl=64 time=0.089 ms 64 bytes from 192.168.9.222: icmp_seq=2 ttl=64 time=0.118 ms 64 bytes from 192.168.9.222: icmp_seq=3 ttl=64 time=0.112 ms 64 bytes from 192.168.9.222: icmp_seq=4 ttl=64 time=0.139 ms ^C --- 192.168.9.222 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3002ms rtt min/avg/max/mdev = 0.089/0.114/0.139/0.020 ms [root@truedei-centos ~]#
-
-
2.ping网关。假定网关IP为:
192.168.9.1
,则执行命令ping 192.168.9.1
。-
[root@truedei-centos ~]# ping 192.168.9.1 PING 192.168.9.1 (192.168.9.1) 56(84) bytes of data. 64 bytes from 192.168.9.1: icmp_seq=1 ttl=64 time=0.923 ms 64 bytes from 192.168.9.1: icmp_seq=2 ttl=64 time=0.898 ms 64 bytes from 192.168.9.1: icmp_seq=3 ttl=64 time=0.964 ms 64 bytes from 192.168.9.1: icmp_seq=4 ttl=64 time=0.888 ms ^C --- 192.168.9.1 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3012ms rtt min/avg/max/mdev = 0.888/0.918/0.964/0.036 ms [root@truedei-centos ~]#
-
则表明局域网中的网关路由器正在正常运行。
-
3.Ping远程IP。这一命令可以检测本机能否正常访问Internet。比如远程IP地址为:
www.baidu.com、8.8.8.8
。执行命令:ping www.baidu.com
,如果屏幕显示:-
[root@truedei-centos ~]# ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=52 time=49.6 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=52 time=47.9 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=52 time=46.3 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=52 time=51.0 ms ^C --- 8.8.8.8 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3014ms rtt min/avg/max/mdev = 46.341/48.748/51.086/1.806 ms [root@truedei-centos ~]# [root@truedei-centos ~]# ping www.baidu.com PING www.wshifen.com (103.235.47.103) 56(84) bytes of data. 64 bytes from 103.235.47.103 (103.235.47.103): icmp_seq=1 ttl=47 time=389 ms 64 bytes from 103.235.47.103 (103.235.47.103): icmp_seq=2 ttl=47 time=390 ms 64 bytes from 103.235.47.103 (103.235.47.103): icmp_seq=4 ttl=47 time=388 ms 64 bytes from 103.235.47.103 (103.235.47.103): icmp_seq=5 ttl=47 time=388 ms ^C --- www.wshifen.com ping statistics --- 5 packets transmitted, 4 received, 20% packet loss, time 4020ms rtt min/avg/max/mdev = 388.518/389.196/390.224/0.663 ms [root@truedei-centos ~]#
-
则表明运行正常,能够正常接入互联网。
进入正题(何为死亡之ping?)。
2009年七月份墨尔本电影节网站被黑,黑客用的方法就是ping攻击。
命令:
[PING -L 65500 -T IP地址]
上面的命令就是我说的“死亡之ping”,其中涉及到两个参数, -L 和 -T
-l
:定义数据包的大小;
-t
:向一个固定IP不停地PING ,通俗点:不停地发送一定大小的ICMP数据报。停止该命令的方法CTRL+C。(注意在linux下默认就是一直ping的)
如果你只有一台电脑也许没有什么效果,但如果有许多电脑(比如1千)那么就可以使对方完全瘫痪。(缺陷:现在大部分电脑都是通过路由来上网的,这种上网方式比使用猫上网安全,安全的原因是前者的IP是动态的)。
最重要一点,你首先得知道对方IP。获取IP的方法有很多,比如使用彩虹QQ,IPsniper等,还有一个命令[netstat -n],具体怎么用就免了。至于获得对方IP地址还有什么用处,你自己想吧,这里就不引导你做坏事了。
2、防止其他主机ping本机
(1)允许ping操作:
A.临时允许PING
操作的命令为:echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all
B.永久允许
PING配置方法。
/etc/sysctl.conf 中增加一行
net.ipv4.icmp_echo_ignore_all=0
(2)禁止ping操作:
A.临时禁止
PING的命令为:echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all
B.永久禁止
PING配置方法。
/etc/sysctl.conf 中增加一行
net.ipv4.icmp_echo_ignore_all=1
(3)使用防火墙禁止(或者丢弃)icmp包:
1、首先启动Iptables服务
2、然后配置规则:iptables -A INPUT -p icmp -j DROP
3、测试
没配置拒绝前:
拒绝之后:
会发现一直在等待,就
哦了
(十)防止被黑客登录时看到系统相关信息
如果希望某个人远程登录到服务时不显示操作系统和版本信息。就可以通过修改相关的配置即可。
1、实战模拟黑客远程登录
这是登录到我的阿里云的服务器上
登录到自己的虚拟机
2、实战
Linux可以设置登录前后的欢迎信息,虽然没啥技术含量,但却是非常实用的一个小技巧。 实现登录消息的功能,可以修改3个文件。
1、/etc/issue
本地登陆显示的信息,本地登录前
2、/etc/issue.net
网络登陆显示的信息,登录后显示,需要由sshd配置
3、/etc/motd
常用于通告信息,如计划关机时间的警告等,登陆后的提示信息
(1) /etc/issue文件
可以来看一下/etc/issue
中的内容:
[root@truedei-centos ~]#
[root@truedei-centos ~]# cat /etc/issue
\S
Kernel \r on an \m
[root@truedei-centos ~]#
可以通过man pam_issue
来了解\r
、\m
、\S
参数的含义:
[root@truedei-centos ~]#
[root@truedei-centos ~]# man pam_issue
[root@truedei-centos ~]#
\d
//本地端时间的日期;
\l
//显示当前tty的名字即第几个tty;
\m
//显示硬体的架构 (i386/i486/i586/i686…);
\n
//显示主机的网路名称;
\o
//显示 domain name;
\r
//当前系统的版本 (相当于 uname -r)
\t
//显示本地端时间的时间;
\u
//当前有几个用户在线。
\s
//当前系统的名称;
\v
//当前系统的版本。
(2)/etc/motd文件
至于文件/etc/motd
,(motd即motd即message of today布告栏信息的缩写) 则是在每次用户登录时,motd文件的内容会显示在用户的终端。
系统管理员可以在文件中编辑系统活动消息,例如:管理员通知用户系统何时进行软件或硬件的升级、何时进行系统维护等。如果shell支持中文,
还可以使用中文,这样看起来更易于了解。/etc/motd缺点是,现在许多用户登录系统时选择自动进入图形界面,所以这些信息往往看不到。
issue与motd文件主要区别在于:当一个用户过本地文本设备(如本地终端,本地虚拟控制台等)登录/etc/issue的文件内容显示在login提示符之前,而/etc/motd内容显示在用户成功登录系统之后。
(3)/etc/issue.net文件
issue.net文件(只针对网络用户
)。
–若通过远程本文设备(如通过ssh或telnet等)登录,则显示该文件的内容。
使用ssh登录时,会不会显示issue信息由sshd服务的sshd_config的Banner属性配置决定,但本人在测试时发现
虽设置了Banner属性但并未对issue.net中的\r和\m等内容进行转义,而是直接显示。
如果对你有帮助,可以分享给你身边的朋友。或者给俺点个大大的赞和大大的评论,点赞和评论就是给我最大的支持,感谢。
水平有限,难免会有疏漏或者书写不合理的地方,欢迎交流讨论。
作者:TrueDei
作者主页:https://truedei.blog.csdn.net/
原文地址:https://truedei.blog.csdn.net/article/details/105981691
转载说明:如需转载请注明原地址和作者名。
如果喜欢我的文章,还没看够可以关注我,我会用心写好每一篇文章。