授权普通用户 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了
授权普通用户 sudo -i 使其具有root的权限的更多相关文章
- 修改php执行用户,并使其拥有root权限
useradd apachephp vi /etc/httpd/conf/httpd.conf 将组和用户修改成apachephp,重启apache,然后用lsof -i:80查看apache的执行用 ...
- sudo user1账号获得管理员root的权限
user1虽然有sudo权限,但不是真正的root权限,修改内核参数之类的就做不了 但是有sudo权限就可以添加账号,以下添加了admin账号与root账号一样的权限 useradd -u 0 - ...
- linux添加到普通用户sudo才干
在超级用户模式添加到普通用户sudo才干 1. su -(进root用户) 2. chmod u+w /etc/sudoer 3. vim /etc/sudoers 于root ALL=(ALL) A ...
- linux 添加用户并设置主目录,shell 并赋予权限 (以 fedora 和 ubuntu 为例)
环境 centos 7.6 添加用户: [root@localhost ~]# useradd -d /home/yaoxu -m -s /bin/bash yaoxu 更改用户密码: passwd ...
- ubuntu系统普通用户sudo命令执行报错解决方案
通过adduser user1命令创建普通用户,且使该用户具有sudo权限(将该新用户user1添加到sudo或root用户组中,或者修改/etc/sudoer文件),但是依然无法执行sudo指令,会 ...
- iOS 获取用户授权的用户隐私保护-地图定位
获取用户授权的用户隐私保护地图定位示例://导入定位框架#import<CoreLocation/CoreLocation.h>@interfaceViewController()< ...
- Ubuntu 设置当前用户sudo免密码
方法1 # 备份 /etc/sudoers sudo cp /etc/sudoers . #打开 /etc/sudoers sudo visudo # 在文件末尾加入 kube ALL=NOPASSW ...
- MySQL新建用户,授权,删除用户,修改密码
首先要声明一下:一般情况下,修改MySQL密码,授权,是需要有mysql里的root权限的.注:本操作是在WIN命令提示符下,phpMyAdmin同样适用. 用户:phplamp 用户数据库: ...
- MySql中添加用户,新建数据库,用户授权,删除用户,修改密码
1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 创建用户: mysql> insert into mysql.user(Host,User,Passw ...
- Magicodes.WeiChat——WeChatOAuthTest(网页授权获取用户基本信息)
Demo访问地址:http://wechat.magicodes.net/app/AppDemo/WeChatOAuthTest?tenantId=1 关于公众号如何获取用户信息,请参考此文档:htt ...
随机推荐
- react 微信h5跳转小程序
componentDidMount() { this.getWxConfig() } getWxConfig () { // 请求后台接口拿到 data信息 wx.config({ debug: fa ...
- 解决Tomcat 启动,http://localhost:8080无法访问 问题
注意:1:tomact能正常启动 2 : 通过startup启动后可以正常访问8080界面: 3: 通过eclipse启动后无法正常访问8080界面: Tomcat能在eclipse里面能正常启动,但 ...
- 【git入门】基于阿里云搭建git
本文旨在说明基本的git使用流程,分为以下几个部分: 1.安装git环境 2.注册 3.git基本操作 一.安装git环境 第一次使用git,需要先安装配置git环境,windows版下载地址http ...
- Ubuntu VMWare安装纪要
一.VMware虚拟机下载与安装 版本:VMware Workstation 16 Pro 二.Ubuntu下载与安装 版本:ubuntu-20.04.2.0-desktop-amd64.iso 三. ...
- 关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数...
关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数... 功能: 1.不需考虑 SizeMode 情况 2.可以获取通过鼠标右键点击的 Tab 3.且顺便返回鼠标左键点的 T ...
- jedis使用分布式锁
import redis.clients.jedis.Jedis;public class A { public static void main(String[] args) throws Exce ...
- NFS存储安装配置
一.NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种, 它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客 户 ...
- react hooks(useState、useEffect、useRef详解)
好巧不巧,工作了一年跳槽了,之前用的vue,现在用的react- 嗯!工作使人进步!现在开始学react吧! 切入正题- react hooks是React16.8.0之后出现的, 类组件存在的问题: ...
- nginx+lua+openresty+kafka相关问题汇总
这里使用的是kafka插件是doujiang大佬的https://github.com/doujiang24/lua-resty-kafka,版本为v0.2.0. 应用场景 在nginx转发中,记录非 ...
- 音视频编解码流程与如何使用 FFMPEG 命令进行音视频处理
一.前言 FFMPEG 是特别强大的专门用于处理音视频的开源库.你既可以使用它的 API 对音视频进行处理,也可以使用它提供的工具,如 ffmpeg, ffplay, ffprobe,来编辑你的音视频 ...