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的权限的更多相关文章

  1. 修改php执行用户,并使其拥有root权限

    useradd apachephp vi /etc/httpd/conf/httpd.conf 将组和用户修改成apachephp,重启apache,然后用lsof -i:80查看apache的执行用 ...

  2. sudo user1账号获得管理员root的权限

    user1虽然有sudo权限,但不是真正的root权限,修改内核参数之类的就做不了 但是有sudo权限就可以添加账号,以下添加了admin账号与root账号一样的权限 useradd -u 0   - ...

  3. linux添加到普通用户sudo才干

    在超级用户模式添加到普通用户sudo才干 1. su -(进root用户) 2. chmod u+w /etc/sudoer 3. vim /etc/sudoers 于root ALL=(ALL) A ...

  4. linux 添加用户并设置主目录,shell 并赋予权限 (以 fedora 和 ubuntu 为例)

    环境 centos 7.6 添加用户: [root@localhost ~]# useradd -d /home/yaoxu -m -s /bin/bash yaoxu 更改用户密码: passwd ...

  5. ubuntu系统普通用户sudo命令执行报错解决方案

    通过adduser user1命令创建普通用户,且使该用户具有sudo权限(将该新用户user1添加到sudo或root用户组中,或者修改/etc/sudoer文件),但是依然无法执行sudo指令,会 ...

  6. iOS 获取用户授权的用户隐私保护-地图定位

    获取用户授权的用户隐私保护地图定位示例://导入定位框架#import<CoreLocation/CoreLocation.h>@interfaceViewController()< ...

  7. Ubuntu 设置当前用户sudo免密码

    方法1 # 备份 /etc/sudoers sudo cp /etc/sudoers . #打开 /etc/sudoers sudo visudo # 在文件末尾加入 kube ALL=NOPASSW ...

  8. MySQL新建用户,授权,删除用户,修改密码

    首先要声明一下:一般情况下,修改MySQL密码,授权,是需要有mysql里的root权限的.注:本操作是在WIN命令提示符下,phpMyAdmin同样适用.    用户:phplamp  用户数据库: ...

  9. MySql中添加用户,新建数据库,用户授权,删除用户,修改密码

    1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 创建用户: mysql> insert into mysql.user(Host,User,Passw ...

  10. Magicodes.WeiChat——WeChatOAuthTest(网页授权获取用户基本信息)

    Demo访问地址:http://wechat.magicodes.net/app/AppDemo/WeChatOAuthTest?tenantId=1 关于公众号如何获取用户信息,请参考此文档:htt ...

随机推荐

  1. net-snmp 自定义OID利用脚本获取值

    两种办法: 1)pass方式 /etc/snmp/snmpd.conf 写脚本 脚本需要注意:要连续输出三行:1.OID 2.类型 3.值 如果不按照这个规定,直接输出值,将会报错. 检查 第二种方法 ...

  2. java mysql截取所需数据

    mysql截取数据: 例:截取门铺名称,门铺名称长度不确定 {"进店日期":"2022-09-01","电话":"1******* ...

  3. vue-封装组件-结合vant实现点击按钮弹出泡泡(Popover)事件控制多个泡泡出现时,弹出对应的泡泡

    <template> <div class="sale-share-box"> <span class="sale-share-btn&qu ...

  4. [Leetcode 559]N叉树的最大深度Maximum Depth of N-ary Tree DFS/BFS模板

    题目 https://leetcode.com/problems/maximum-depth-of-n-ary-tree/ N叉树的最大深度 Given a n-ary tree, find its ...

  5. [C#]协变Covariance案例

    协变参考代码1: using System; using System.Collections.Generic; using System.Linq; namespace CovarianceSoOn ...

  6. 寄存器与RAM的区别

    转自:https://blog.csdn.net/qq_18191333/article/details/106912668 概述 寄存器是"存储设备",主要用于存储和检查微型计算 ...

  7. 通过yum命令只下载rpm包不安装

    方法一:yumdownloader# 如果只想通过 yum 下载软件的软件包,但是不需要进行安装的话,可以使用 yumdownloader 命令: yumdownloader 命令在软件包 yum-u ...

  8. java锁之初相见

    废话不多说,先上锁的分类图 1.乐观锁&悲观锁 悲观锁 悲观锁认为自己在使用数据的时候一定有别的线程来修改数据,因此在获取数据的时候会先加锁,把别的线程阻塞住,最终确保数据不会被别的线程修改. ...

  9. MySQLdb安装

    yum seach MySQL-Python sudo yum install MySQL-python.x86_64 import MySQLdb

  10. mysql索引类型详解

    转载网址: http://c.biancheng.net/view/7897.html