centos服务管理主要命令是systemctl,centos7的服务不再放在/etc/init.d/下;而放在/usr/lib/systemd/system下,centos7系统中systemctl管理工具整合了chkconfig和service于一体

创建用户命令:adduser和useradd是一样的

useradd {用户名} -U -m -s /bin/bash

部分选项说明:

-m:--create-home   创建用户家目录

-b:--base-dir {家目录}   指定用户家目录位置

-g:--gid {用户组名或id}   指定用户组

-D:--default   查看或修改默认创建用户配置

-s:--shell {SHELL}   允许登录指定shell,如:/bin/sh、/bin/bash等,可以用echo $SHELL查看默认shell

-U:--user-group   创建一个和用户名一样的用户组

-p:设置密码,但是好像要用passwd重新设置

修改用户配置:usermod(参数跟adduser差不多)

sudo权限配置:

新创建的用户并不能使用sudo命令,需要给他添加授权

sudo命令的授权管理在/etc/sudoers文件里,两种修改方式:

  1. 使用visudo命令(推荐使用)
  2. 直接修改文件,此文件默认没有w权限,需添加w权限后才能修改,改完后记得将w权限收回
## Allow root to run any commands anywher
root ALL=(ALL) ALL
#user1可以在任何可能出现的主机名的系统中,可以切换到root用户下执行/bin/chown和/bin/chmod 命令,通过sudo -l来查看user1在这台主机上允许和禁止运行的命令
user1 ALL=/bin/chown,/bin/chmod
#user2可以在任何可能出现的主机名的主机中,可以切换到root下执行/bin/chown,不需要输入user2用户的密码;并且可以切换到任何用户下执行/bin/chmod命令,但执行chmod时需要user2输入自己的密码
user2 ALL=(root) NOPASSWD: /bin/chown,/bin/chmod

规则:

授权用户  主机=[(切换到哪些用户或用户组)]   [是否需要密码验证] 命令1,[(切换到哪些用户或用户组)]  [是否需要密码验证] [命令2],......

注解:在[(切换到哪些用户或用户组)] ,如果省略,则默认为root用户;如果是ALL ,则代表能切换到所有用户;注意要切换到的目的用户必须用()号括起来,比如(ALL)、(linuxidc)

  • 设置记住sudo密码时间,避免多次重复输入密码:

Defaults env_reset改为:
Defaults env_reset , timestamp_timeout=30  
#30就是代表时间,你可以设置为 10 或 30 ,表示10分钟或半小时。

ssh登录权限配置:

在/etc/ssh/sshd_config文件中,将PermitRootLogin设置为yes即可允许root用户远程登录

修改后需重启ssh服务systemctl restart sshd

如果重启后还是不行, 请重新载入sshd_config 文件systemctl restart sshd

检查22端口是否有进行监听netstat -tnlp

默认新建用户是允许ssh登录的

可以通过在/etc/ssh/sshd_config中添加AllowUsers:username(可以多个,空格分开)给普通用户增加ssh权限

也可以设置允许和拒绝ssh的用户/用户组: DenyUsers:username,DenyGroups:groupname

秘钥登录ssh:

实现目标:A机器ssh登录B机器无需输入密码
1、登录A机器 
2、ssh-keygen,将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub
3、将.pub 文件复制到B机器的 .ssh 目录, 并 cat id_dsa.pub >> ~/.ssh/authorized_keys
4、大功告成,从A机器登录B机器的目标账户,不再需要密码了;(直接运行 #ssh 192.168.20.60

通过A机器linux自带的ssh工具或XShell工具生成公钥和私钥    

[xzyx~]#ssh-keygen
Enter file in which to save the key (xzyx/.ssh/id_rsa):
#输入key的保存位置,直接回车即可。
Enter passphrase (empty for no passphrase):
#私钥口令,不需要的话直接回车。

把公钥追加到B机器authorized_keys文件中

在A机器执行:
[xzyx~]# ssh-copy-id -i xzyx/.ssh/id_rsa.pub xzyx@192.168.20.60
或把.pub拷贝到B机器执行:
[xzyx~]# cat xzyx/.ssh/id_rsa.pub >> xzyx/.ssh/authorized_keys

设置文件和目录权限:

设置.ssh目录权限
$ chmod 700 -R .ssh

设置authorized_keys权限
$ chmod 600 authorized_keys

要保证.ssh和authorized_keys都只有用户自己有写权限。否则验证无效。

登录测试:ssh -i  id_rsa文件路径  xzyx@192.168.20.60,如果是XShell等工具直接导入私钥即可

基于密钥认证的配置
    # vi /etc/ssh/sshd_config  
  PasswordAuthentication no //禁止使用基于口令认证的方式登陆
  PubkeyAuthentication yes //允许使用基于密钥认证的方式登陆
    # systemctl restart sshd

Centos7下创建和管理用户的更多相关文章

  1. centos7下创建数据库和用户

    首先需要在centos系统下安装好mysql,这个我已经安装好了,这里就不把过程贴出来了. 第一步:使用root用户登录到mysql数据库: 第二步:创建一个mysql数据库.当第一步登录成功后,便会 ...

  2. CentOS7下mariadb日常管理

    在CentOS7下,官方提供的mysql的rpm包就是mariadb,可查看mariadb包信息 [root@host ~]$rpm -qi mariadb # 需要先安装该包 Name : mari ...

  3. Linux下创建和删除用户

    在Linux下创建用户和删除用户,必须在root用户下,如果你当前不是用根用户登录,你可以打开终端,输入"su root"命令,再输入根口令,就可以进入root用户模式下,如下所示 ...

  4. centOS7:创建的新用户如何获得写权限

    要在root用户下使用 1.新建用户 adduser testuser //新建testuser 用户 passwd testuser //给testuser 用户设置密码 2.赋予root权限 方法 ...

  5. linux下创建用户组与用户 只能访问指定目录的方法 以及FTP用户配置详解

    VSFTPD 安装: -- 查看是否已经安装 VSftpd: rpm -qa | grep vsftp yum install -y vsftpd groupadd ftpuser #创建ftpuse ...

  6. centos7下创建mysql5.6多实例

    一.mysql安装目录说明mysql5.6以二进制安装包安装在/data/mysql56下数据目录为/data/mysql56/data下配置文件为/etc/my.cnf下 二.多实例目录说明/mys ...

  7. (转) centos7下创建mysql5.6多实例

    原文:http://blog.csdn.net/a1010256340/article/details/77483504 一.mysql安装目录说明mysql5.6以二进制安装包安装在/data/my ...

  8. linux下创建与删除用户详细步骤 ***

    linux下用户的操作还是相对容易理解的,基本操作如下: 1.新增用户 只有root用户能创建新用户 #useradd user1 新建后将会在/home目录下生成一个与用户名相同的用户主目录.同时会 ...

  9. Oracle 创建与管理用户

    标识用户是 Oracle 数据库管理的基本要求之一,每一个能够连接到数据库的用户都必须是系统的合法用户.用户想要使用 Oracle 的系统资源,就必须拥有相应的权限. 一.身份验证 Oracle 为用 ...

随机推荐

  1. 在linux上安装pear

    在搭建centreon的过程中,需要pear模块支持. 什么是pear pear是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写. ...

  2. python编程之进程

    进程:运行中的程序 进程和操作系统的关系:进程是操作系统调度和资源分配的最小单位,是操作系统的结构基础. 那么为什么要有进程呢? 程序在运行时,会使用各种硬件资源,如果他们之间没有界限,那么程序之间的 ...

  3. JPA一对多循环引用的解决&&JackSon无限递归问题

    说是解决,其实不是很完美的解决的,写出来只是想记录一下这个问题或者看一下有没有哪位仁兄会的,能否知道一二. 下面说说出现问题: 问题是这样的,当我查询一个一对多的实体的时候,工具直接就爆了,差不多我就 ...

  4. python模块之包

    包:将解决一类问题的模块放在同一目录下就形成了一个包 为了更好的了解包,我们就模拟创建一个包 import os os.makedirs('glance/api') os.makedirs('glan ...

  5. 地址中如果含有"+",发给服务器时"+"变成了空格问题解析

    如地址为sms:+7 915 444-414-444,含有空格. 服务器解码 URLDecoder.decode("sms:+7 915 444-414-444"),返回的是sms ...

  6. navicat primium 12免安装版的解决方式

    https://blog.csdn.net/wanghailong_qd/article/details/85887825 工具————选项 -----环境 会发现是instantclient_10_ ...

  7. substring和substr的区别和使用

    第一反应是都是截取字符串的方法,好像平常使用的时候也没太注意区分这俩,今天看到正好来区分一下 substring(start,[end]) 如果省略end,那么截取的是从指定位置到末尾 var str ...

  8. CString::CompareNoCase与CString::Compare的区别

    转载:https://blog.csdn.net/lingdxuyan/article/details/4362116 函数原型:int CompareNoCase( LPCTSTR lpsz ) c ...

  9. JMeter JMS测试计划

    在本节中,我们将学习如何编写一个简单的测试计划来测试Java Messaging Service(JMS). 出于测试目的,我们使用Apache ActiveMQ.有各种JMS服务器,如:glassf ...

  10. 第二阶段:4.产品功能需求文档PRD:7.案例总结

     Dev就是一些开发 这就是一个评价表格 每次沟通都要记得记录以及总结反思