前言

最近一段时间服务器有受到一些挖比特币的人的攻击,这里就简要说明一下提升服务器安全度的做法

禁用root登录

root权限可以说是linux服务器的最高权限,如果我们平常都是直接使用root用户来登录的话

其实是一个很不安全的行为,一个是防止平时的一些操作失误,另一个也是防止黑客在攻破我们

服务器的时候可以有最高的权限来做一些坏事

一、创建普通用户并设置密码

[root@pro-db2 ~]# useradd murry
[root@pro-db2 ~]# passwd murry
Changing password for user murry.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

二、更改配置文件,禁止root直接登陆

[root@pro-db2 ~]# vim /etc/ssh/sshd_config

打开文件后直接输入  :131

131 PermitRootLogin yes

这里就是控制是否可以使用root直接ssh远程连接的参数选项

我们只需要把yes改为no(这里严格区分大小写),然后 :wq保存退出即可

如果你的root用户是没有密码或者你忘记密码了,记得使用passwd命令直接

在root用户下更改root密码

三、尝试登陆

最后,退出登录你的服务器尝试

[c:\~]$ ssh root@IP地址

Connecting to IP地址:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
Connection closing...Socket close.

即使密码输入正确也会被阻止在门外

通过之前设置好的普通用户进行登录

[c:\~]$ ssh murry@IP地址

Connecting to IP地址:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'. [murry@pro-db2 ~]$

登陆成功,然后使用su 命令切换到root

[murry@pro-db2 ~]$ su root
Password:
[root@pro-db2 murry]#

这样就可以安全的登陆到服务器

使用sudo分配权限

上面提到过,直接使用root用户操作由于权限太大很容易造成操作上的失误,

所以合理地使用sudo是很有必要的

一、切换用户到root并更改文件

sudo命令的控制文件需要有良好的封闭性,所以要注意权限问题

首先切换到root用户下(参照上面内容)

然后,赋予/etc/sudoers文件读权限

chmod u+w /etc/sudoers

开始修改文件

找到root    ALL=(ALL)       ALL
按照类似添加一行
user ALL=(ALL) ALL(执行时需要密码)
user ALL=(ALL) NOPASSWD:ALL(执行时不需要密码)
退出并保存:wq

最后去除/etc/sudoers读权限

chmod u-w /etc/soduers

二、切换到普通用户并尝试

这里尝试一下yum命令

[murry@pro-db2 ~]$ yum -y install tree
Loaded plugins: fastestmirror
You need to be root to perform this command.
[murry@pro-db2 ~]$ sudo yum -y install tree
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
base | 3.7 kB 00:00
epel | 4.7 kB 00:00
epel/primary_db | 6.0 MB 00:00
extras | 3.4 kB 00:00
updates | 3.4 kB 00:00

发现如果不加sudo确实是无法运行的,这样就达到了咱们的目的

禁用root登录以及使用sudo分配权限的更多相关文章

  1. linux 禁用root登录

    1.新建一个用户,用来登录 # useradd  aaaaa  (已添加用户名aaaaa为例). 2.设置密码(需要切换到root下进行设置) # cd /root # ls #passwd bbbb ...

  2. freebsd 禁用root登录ssh并给普通用户登录权限

    转自http://www.linux521.com/2009/system/200904/2021.html http://www.myhack58.com/Article/48/67/2011/30 ...

  3. Linux禁用root用户

    在创建各种云主机的时候,云服务商给的都是root用户,这很方便,但是有某些时候会造成一些困扰,日后在服务器上启动各种服务后,仅仅拥有root权限的用户才能访问更改这些服务,这样会造成一些不必要的困扰, ...

  4. Security基础(一):Linux基本防护措施、使用sudo分配管理权限、提高SSH服务安全

    一.Linux基本防护措施 目标: 本案例要求练习Linux系统的基本防护措施,完成以下任务: 修改用户zhangsan的账号属性,设置为2015-12-31日失效(禁止登录) 锁定用户lisi的账户 ...

  5. Linux禁用root账户ssh登录

    前言 今天登录服务器的时候,控制台输出如下信息 There were 48990 failed login attempts since the last successful login. Last ...

  6. 【转】服务器添加新用户用ssh-key 登录,并禁用root用户 密码登录

    [转]Linux最高权限用户root,默认可以直接登录sshd.为了提高服务器的安全度,需要对它进行禁止,使得攻击者无法通过暴力破解来获取root权限.  ps: 以下内容皆非原创,只是个人的一个实践 ...

  7. 增强VPS SSH账号安全:改端口,禁用Root,密钥登录,Denyhosts防暴力攻击

    VPS SSH账号是我们日常管理VPS的主要登入方式,尤其是Root账号,对Linux系统安全至关重要.以前好多站长喜欢用Putty中文版,这实际是别人修改官方Putty汉化而来,这些软件被植入了后门 ...

  8. CENTOS如何禁用ROOT本地或远程SSH登录

    下面详细描述如何禁止root登录. 禁止root本地登录 禁止root远程ssh登录 禁止root本地登录 修改/etc/pam.d/login文件增加下面一行   1 auth required p ...

  9. Ubuntu 13.10上用户怎样获得root权限,用户怎样获得永久root权限,假设配置root登录

    一.用户怎样获得root权限: 1. 进入terminal 2. 输入sudo  passwd root   并设置password,提示要你输入两次password.自己设定password,一定要 ...

随机推荐

  1. mybatis 模糊查询和<![CDATA[ ]]>的作用

    1. sql中字符串拼接 SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%'); 2. 使用 ${...} ...

  2. JDBC连接oracle RAC数据库配置

    RAC的配置如下: node1:ip地址192.168.60.132,实例名:rac1,主机名:rac1 node2:ip地址192.168.60.144,实例名:rac2,主机名:rac2 RAC服 ...

  3. 根据百度API获得经纬度,然后根据经纬度在获得城市信息

    package com.pb.baiduapi; import java.io.BufferedReader; import java.io.IOException; import java.io.I ...

  4. 如何使用动画和精灵表单 Cocos2d-x 2.1.4

            本文实践自 Ray Wenderlich.Tony Dahbura 的文章< How to Use Animations and Sprite Sheets in Cocos2D ...

  5. Android网络缓存的实现思路

    在开发群里有多位同学问到了关于Android中网络缓存的问题.事实上不管是Android还是iOS,缓存的大致思路都是同样的,以下就几种情况下的缓存做一个大致的介绍.顺便说一下有些开源的网络请求框架已 ...

  6. Angular路由与Nodejs路由的区别

    转自:http://www.imooc.com/qadetail/114683?t=148182 觉得angualr.js的路由是针对于单页面的路由,每次路由发生变化,只是页面的状态发生变化,页面本身 ...

  7. 一次真实的蓝屏分析 ntkrnlmp.exe

    故事背景: 话说我一直都是远程公司的电脑,在我晚上11点敲代码敲得正爽的时候,被远程的主机挂掉了,毫无征兆的挂掉了,我特么还好有闲着没事就ctrl + s保存代码的习惯,要不然白敲了那么久,我以为是公 ...

  8. CF 557B(Pasha and Tea-贪心)

    B. Pasha and Tea time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  9. 使用Spring提供Quartz来实现定时任务

    Spring功能越来越多了,用起来还很舒服方便,Quartz实现的定时任务就是一个. 首先是配置文件: <?xml version="1.0" encoding=" ...

  10. shell常用调试方法

    检查语法 -n选项只做语法检查,而不执行脚本. sh -n script_name.sh 启动调试 sh -x script_name.s 进入调试模式后,Shell依次执行读入的语句,产生的输出中有 ...