被勒索比特币后续我决定写出这篇文章告诉更多人如何对付这些人

黑客竟然找到我头上了?

其实事情已经过去很久了,是博主在大二时候的事,因为经常参加一些比赛,主要是部署参加比赛的作品。突然有一天,打开云服务器,竟然所有的文件都不能用了,每个文件都是相同的内容,说让我给这个钱包转比特币。查了查才知道被黑客勒索了。这是真事

当时心里想:幸亏上面没有重要的东西

其实我挺开心的,哈哈,竟然这么幸运能被黑客给勒索,竟然能被黑客给盯上,也是很幸福呀。

由于以前没有安全的意识,不知道你是否和我一样:

  • 1、Linux内核安全模块关闭;
  • 2、防火墙关闭,允许所有的数据报通过;
  • 3、为了方便,一直使用root超级用户操作;
  • 4、root超级用户的密码超级简单,是123456级别的。

现在有了安全的意识,想象一下真的可怕,下面通过这篇文章来简单的聊一聊个人怎么去做

如果这篇文章对你有用,别忘记点个赞,评论一下哦。

一、前言

(一)概述

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 [email protected]
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
转载说明:如需转载请注明原地址和作者名。

如果喜欢我的文章,还没看够可以关注我,我会用心写好每一篇文章。

原创文章 218 获赞 4339 访问量 42万+

猜你喜欢

转载自blog.csdn.net/qq_17623363/article/details/106106970