授权普通用户 sudo -i 使其具有root的权限

1、ssh 秘钥登录授权

将此代码片更名为  adduser.sh 放在linux的 /root 目录下

#!/bin/sh

echo 'ssh-key:' $1
echo 'username:' $2

useradd -m $2
usermod -G wheel $2
passwd -d $2

mkdir /home/$2/.ssh
echo $1 > /home/$2/.ssh/authorized_keys
chmod 600 /home/$2/.ssh/authorized_keys
chown $2:$2 /home/$2/.ssh -R

然后执行命令 visudo  进入后, 去掉该注释

则添加用户的命令如下 

bash adduser.sh "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyr4a3fAXuZg9McgTRHCzIkKTNVkUCPeRbA+9AuFOUOT4VXb2sykMrB5subAUtTU2d/88z5X9dUjw0K1a17RR7zKaWLt1BkSDLr6/LOJRoNM1zbVSH3THB6eefaZGJaob1j7J4XZkOHXrYTn+Gtu6tWDaboHY+ekX7S4hHtIM0VVNNRdf4Nv9zgpSPFmhjVmFqizeMmnYplTd1N1y4HJMP1uqq1oqC0UNqpab/k5smbWDEKFUyDqk8E2kaG+4IE4bZATpT45wygovq4IFK1xDwoZTYbMu9XrG9V3fKIr4KG1KQytSTah93oyBK6zmwLsxEjvMi1KGP54w==" jeffery

这样的话, 使用 普通用户(如上 jeffery) 使用 sudo -i 则具备了, root 的权限 

 

 

2、Centos7.X 关闭 selinux

1、查看

[root@dev-server ~]# getenforce
Disabled
[root@dev-server ~]# /usr/sbin/sestatus -v
SELinux status:                 disabled

2、临时关闭

##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
setenforce 0

3、永久关闭

vi /etc/selinux/config

将 SELINUX=enforcing 改为 SELINUX=disabled 
设置后需要重启才能生效

centos 7.0 查看selinux状态|关闭|开启

Linux在安装好之后通常SELinux都是出于默认开启的状态,开启的情况下会导致一些服务的安装不成功。

在不需要的情况下完全可以关闭掉,下面是在centos 7.0里面如何查看,关闭selinux。

查看selinux状态

[root@localhost ~]# sestatus  
SELinux status:                 enabled  
SELinuxfs mount:                /sys/fs/selinux  
SELinux root directory:         /etc/selinux  
Loaded policy name:             targeted  
Current mode:                   enforcing  
Mode from config file:          enforcing  
Policy MLS status:              enabled  
Policy deny_unknown status:     allowed  
Max kernel policy version:      28

临时关闭

[root@localhost ~]# setenforce 0

可以修改配置文件/etc/selinux/config,将其中SELINUX设置为disabled永久关闭

3、更改 ssh 默认端口

vi /etc/ssh/sshd_config

Port 默认端口 22 改为了 端口:20002

重启 ssh 服务

systemctl restart sshd.service

4、防火墙授权新端口 20002

查看已经授权的端口

firewall-cmd --list-ports

授权新端口 20002

firewall-cmd --zone=public --add-port=20002/tcp --permanent

重新加载防火墙配置

firewall-cmd --reload

再次查看防火墙已经授权的端口

firewall-cmd --list-ports

5、禁止root登录;禁止密码登录

 

禁止root登录

编辑远程服务器上的sshd_config文件:

vi /etc/ssh/sshd_config

PermitRootLogin yes改为no

PermitRootLogin no

编辑保存完成后,重启ssh服务使得新配置生效,然后就无法使用口令来登录ssh了

 

禁止密码登录

编辑远程服务器上的sshd_config文件:

vi /etc/ssh/sshd_config

PasswordAuthentication yes改为no

PasswordAuthentication no

编辑保存完成后,重启ssh服务使得新配置生效,然后就无法使用口令来登录ssh了

 

 

 

posted @ 2017-05-27 17:04  汀风说后端  阅读(255)  评论(0编辑  收藏  举报