linux基础-用户

打开终端 基本常用命令
su ------打开输入管理员密码
按向上键就出现上一行敲出来的命令,可以快捷的进行更改
useradd ---- 新建用户 userdel ------删除用户
passwd 用户名 ----- 修改这个用户的密码
tail /etc /passwd ----查看所有用户
su 用户名 -----切换身份
clear 或者 Ctrl+L -----清屏
Ctrl+C 终止
tab ----补全命令
Ctrl+A -----跳到前面
Ctrl+E -----调到后面
history -----查看历史敲的命令
!322 -----查看敲的第322条命令
ifconfig -----查看ip地址
uname -r --------内核版本信息
putty ----- 远程登录
shutdown -----关机 (-r 加时间 多少时间后重启 -h 多少分钟后关机 加now 立刻关机或重启)
reboot ----重启 halt —关闭系统

命令格式:
1.命令名 ----小写字母组成
2.选项 ----是对命令的特别定义 以“-”开始 例如 - r
3.参数 —提供命令的运行的信息,或者是命令执行过程中所使用的文件名
一般格式是:
【root @sever1~】#命令名 【选项 1】【选项 2】<参数1> < 参数2> …

Linux基础命令
简单命令
who ----- 哪个用户在服务器上登录过 who am i ---- 查看当前用户
which ------ 显示目录的所在位置
echo ------ 输出引号内的字符串 (后面必须加引号才可以输出 单引号 双引号)
date ------ 当前时间 +%y 显示年
cal -----查看当前日历表 cal -3 显示最近三个月的日历
man --help -------帮助文档
ls ----列举当前目录下的文件 ls -l ------详细信息 ll= ls -l
ls -a —显示出以点开头的所有文件 ls -d -----显示目录信息
pwd --------显示当前用户所在位置
cd ----- 切换路径 (例如cd /etc ) cd … ----反回上一路径 cd~ ----家目录
/home — 用户主目录的基点
/root -----超级用户的目录
/usr —最大的目录
touch ----创建文件
相对路径:一次一次的返回的目录,一层一层的去目的地
绝对路径:更目录开始的就是绝对路径 例如:去 c.txt cd /home/zhangfei/c.txt

特殊符号
. 当前目录
… 上一级目录

  • 切换到前上一次操作的目录
    ~ 当前用户的家目录

目录文件;
mkdir ----创建目录 (目录都是蓝色显示)递归创建 -p ------递归创建
rmdir -----删除目录
-a 显示所有文档及目录 包括隐藏的文件
-l 显示文件的而详细信息、
-ld 显示当前目录信息

文件;
touch 创建文件
touch -t 04051230 ----- 修改该文件创建时间为四月五日十二点三十
-m ----- 改变文件修改时间为当前时间
-a -----改变文件访问时间为当前时间

cp文件拷贝 -----将一个文件拷贝另一个文件中,或将无数个文件拷贝到另一个目录中
命令格式:cp 源文件 目的地 -p ----把属性也给完全复制 cp -p /etc/passwd /etc/passwd.bak
-r :若 source 中含有目录名,则将目录下之文件亦皆依序拷贝至目的地。
-f :若目的地已经有相同档名的文件存在,则在复制前先予以删除再行复制

mv移动
说明:将一个文件移至另一文件,或将数个文件移至另一目录。
参数:-i 若目的地已有同名文件,则先询问是否覆盖旧档。 -f(强制性)-u(更新)
1、移动文件到目录中 mv 源文件 目的地
[root@localhost tmp]# cd /home/ajun/
[root@localhost ajun]# cp /tmp/yum.log yum.log
[root@localhost ajun]# mkdir aaa
[root@localhost ajun]# mv yum.log aaa
2、重命名文件 mv 原文件名 新文件名
[root@localhost ajun]# mv aaa bbb
3.多个文件移动
[root@localhost ajun]# mv test1 test2 bbb/
rm删除命令
-f ----- 不作确认提示,强制删除文件
-i ----- 进行确认提示
-r,-R ----- 递归的移除目录,它可以连同这个目录下的子目录都删除

查看
cat ------查看 tac ------反向查看
head -------默认显示前十行 tail --------默认显示后十行
more ------按页显示文件 less -------通过鼠标上下滚动
file ------显示文件类型

VIM文本编辑器
三种模式:命令模式,编辑模式,底行模式
vim-----打开一个文件如果没有就是创建这个文件
i,I,o,O,a,A -------可以进入编辑模式
i -----直接光标前插入,进入插入模式 I -------在光标所在行行首插入
a -------在光标之后插入 A ------ 在光标之后的末尾插入
o -------在光标之后的下一行插入 O ------在光标之后的上一行插入
命令模式删除单个字符的操作
x -----在光标向后删除一个字符 X -----在光标向前删除一个字符
u ------撤销 Ctrl + r -----对使用u命令撤销的操作进行恢复
Shift +d ------- 删除光标之后的本行所有字符
命令模式删除行和复制行的操作
dd -------删除当前行内容(剪切) 5dd -------从光标开始删除了五行
yy -------复制当前行内容 5yy -------从光标开始复制了五行
p -------粘贴
gg -------跳到第一行行首 G -------跳到最后一行行首 49G ----回到49行行首
yG -----从光标处复制到文章的末尾
dgg ----从光标处剪切到开头起始处 dG -----从光标处剪切到最后
nG光标从文件开头向下移动到第n行,例如20G,可以和set nu配合使用
dw -------从光标起删除到这个单词的末尾
yw ------从光标起复制到单词末尾
^ -----光标到行首,模式不变 d^ ----剪切当前光标处到行首
$ -----光标到行尾,模式不变 d$ ----剪切当前光标处到行尾
底行模式
退出
esc-------退出编辑模式
:q —退出vim,若文件被改动则提示无法退出信息
:q! ----不保存文件,直接退出vim
:wq ------保存文件后退出 :wq! -----强制保存文件后退出
:r 文件名 — 复制到文件 :wq 文件名 -------保存到这个文件
bash(后面加上查看的文件就可以看)—查看
行号
:set nu --------显示行号 : set nonu -----退出行号
:n1,n2 co n3 ----将从n1行到n2行之间(包括n1,n2行本身)的所有文本复制到n3行之下
:n1,n2 m n3 ----将从n1行到n2行之间(包括n1,n2行本身)的所有文本移动到n3行之下
:n1,n2 d -----删除从n1行到n2行之间(包括n1,n2行本身)的所有文本
:n1,n2 s/1/2/g -----将n1行到n2行之间(包括n1,n2行本身)所有字符串1用字符串2替换
替换查找
: /bin(要查找的单词) -----查找 ,从上往下查找。下一个n ,上一个N
:n,ms/ 被替换的内容/替换的内容 / -------替换 其中/可以用#)
$ ------表示最后一行 % ------表示全文
例如:1,5s/root/ROOT/ -------一到第五行把root替换为ROOT
:1,$s(最后一行)/root/ROOT/g(全文替换)
:%s/root/ROOT/g 全文替换
把一个文档中的/换成\ 转义字符
:%s///\/g
:%s//bin/BIN/g -----把小bin改成BIN

用户、用户组
user -------用户 u
group ----- 用户组 g
other ----- 其它 o
在Linux里面,创建一个用户,默认会创建一个用户组(一个用户可以属于多个组)
用户标识符(UID和GID)
每个登录的用户至少有两个ID,一个是用户ID(UID),一个是用户组ID(GID)。
UID:
a.系统管理员 root :具有使用系统所有权限的用户,其UID 为0.注意:你要让其他的账号名称也具有root权限是,将该账号的UID改为0即可。但是不建议由多个账号的UID是0.
b.系统用户 :保障系统运行的用户,一般不提供密码登录系统 ,其UID为1-999(保留给系统使用的ID)之间.
c.普通用户 : 即一般用户,其使用系统的权限受限,其UID为1000-2^32-1之间.
用户和组的关系:
一对一:一个用用户可以存在一个组中。一对多:一个用户可以存在多个组中
多对一:多个用户可以存在一个组中。多对多:多个用户可以存在多个用户中。
Linux中最重要的四个文件
1、系统上的账号的相关信息,都存储在/etc/passwd
2、个人的密码则记录在/etc/shadow
3、linux所有组名都记录在/etc/group
4、linux所有组名密码都记录在/etc/gshadow

用户管理
用户命令
添加用户useradd
passwd 用户名 更改这个用户密码
ll –d /home/user01(查看目录文件的权限)
grep “user01” /etc/passwd /etc/shadow /etc/group /etc/gshadow
grep命令:强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来
-u 后面接UID ,是一组数字
-g’初始组’ —设置用户初始组的名称或数字id;该组是必须存在的
-G’附加组’ ----用户要加入的附加组列表
-s ------用户默认登录shell的路径;
-m --创建用户主目录/home/【用户名】
-m强制! -------要创建用户主文件夹(一般账号的默认值)
-M强制!-------不要创建用户主文件夹(系统账号的默认值)
-e-----后面接日期,格式为YYYY-MM-DD 此选项写入shadow第八字段,表示失效日期
-r -------创建一个系统账号([root@localhost ~]# useradd -r ajunos)
-d -----指定用户登入时的启示目录 //默认主目录
useradd -d /home/user3 user4 //user3的目录给user4

创建用户的默认值
[root@localhost ~]# useradd -D
GROUP=100 (默认的用户组)
HOME=/home (默认的主文件夹所在的目录)
INACTIVE=-1 (密码失效日,代表永不失效)
EXPIRE= (账号失效日)
SHELL=/bin/bash (默认的shell)
SKEL=/etc/skel (用户主文件夹的内容数据参考目录)
CREATE_MAIL_SPOOL=yes(是否主动创建邮件邮箱)
Passwd命令解释
passwd -S ajun1(报告已命名帐号的密码状态)
-l -----锁定指名帐户的密码(仅限 root 用户)
-u -----解锁指名账户的密码(仅限 root 用户)
-d -----删除已命名帐号的密码 账号吴口令登录 在root下操作
-x -----密码的最长有效时限
-n -----密码的最短有效时限
-w -----在密码过期前多少天开始提醒用户
-i -----当密码过期后经过多少天该帐号会被禁用
-e -----终止指名帐户的密码(仅限 root 用户)
-f -----强制执行操作
-S参数
[root@localhost ~]# passwd -S ajun1
ajun1 PS 2017-03-27 0 6 5 3 (密码已设置,使用 SHA512 算法。)
锁定账户(-l)恢复(-u)

修改用户usermod
usermod 参数 用户名 (使用权限 root)
参数 (其余用的时候用 man 查看)
-u —改变用户UID
-l ------修改用户名
-p -----将加密过的密码(password)设为新密码
-L —锁住密码,使密码不可用
-U —为用户解锁常见端口.note
-c 改备注
-d 改变指定用户登入时的启示目录 //默认主目录
-e ------修改账号的有效期限
-aG 用户组 用户------把用户加入某一个组,a标示在原有基础
例子:# uesrmod –aG ajun1 ajun

uesrmod –e 2017-10-25 ajun

uesrmod –l ajun1 ajun2

查看用户:/etc/passwd
id 加用户名 检查
Chage命令
chage -l ajun1 -----列出该账号的详细密码参数
chage –d 0 ajun1 ------强制性要求这个用户第一次登录时,一定要更改密码后才能够使用系统资源
删除用户userdel
userdel [-r] <用户账号名>
格式:userdel [-r] <用户账号名>
删除用户账号:
#grep user01 /etc/passwd (查询user01是否存在)
#userdel user01 (删除user01)
#grep user01 /etc/passwd (再次查询已不在)
#ll –d /home/user01 (用户宿主目录并没删除)
删除用户账号同时删除用户宿主目录
#userdel –r user01 (删除user01,同时删除其宿主目录)

ll –d /home/user01 (用户宿主目录已删除)

分析userdel –r 的过程
1。从账户文件中移去用户表项
2.删除用户宿主目录

用户组
groupadd --------- 添加组账号
groupmod --------修改用户组账号属性
Groupdel --------删除组用户账号

Groupadd (添加组账号)
添加组账号(GID>1000)
#groupadd <组账号名> [-g GID ]
#groupadd mygroup –g GID (建立组账号)
#grep mygroup /etc/group (查询组账号)
mygroup❌502
建立系统组账号(GID<1000)
#groupadd –r <系统组账号名> [-g GID]
#groupadd –r sysgroup (建立系统组账号)
#grep sysgroup /etc/group (查询系统组账号)
sysgroup❌11
再如:#groupadd –g 1888 group2
创建一个组group2,其GID为1888
Groupmod (修改用户组账号属性)
改变组账号名 (GID不变)
#groupmod -n <新组账号名> <原组账号名>
#groupmod –n newgroup mygroup (组账号改为newgroup)
#grep newgroup /etc/group (查询newgroup组账号)
newgroup❌502
改变组账号的GID(组账号名 不变)
#groupmod –g <新的GID> <组账号名>
#groupmod –g 1503 mygroup (组账号GID改为1503)
#grep mygroup /etc/group (查询组账号)
mygroup❌1503

Groupdel (删除用户组账号)
删除组账号名
#groupdel <组账号名>
删除指定的组账号,该组账号必须存在而且不能作为私有组被用户账号引用。
#userdel myuser (先删除该组下的用户)
#groupdel mygroup(再删除组账号)

gpasswd (用户组管理员功能)
-a 将用户添加到group组
Gpasswd -a user01 group01
-d 将用户从group组中删除
-r 取消群组密码

[root@localhost ~]# groupadd test
[root@localhost ~]# gpasswd test
正在修改 test 组的密码
新密码:
请重新输入新密码:
[root@localhost ~]# gpasswd -A 账号名ajun test
[root@localhost ~]# grep test /etc/group /etc/gshadow
/etc/group:test❌1003:ajun
/etc/gshadow:test: 6 6 6CNME6PsYXy$gQnw/pWi1L6ctwf1zEb9onRPbvmEYw/Z/asOGpSfGqECs3wvy7j1D/GpPJR0cd.ezOyvhBjtCuXRGHBBCFYGv1:ajun:ajun

[ajun@localhost root]$ gpasswd -a ajun1 test
正在将用户“ajun1”加入到“test”组中
[ajun@localhost root]$ grep test /etc/group
test❌1003:ajun,ajun1
[ajun@localhost root]$

Linux系统加固
锁定不必要的用户
passwd –l 解锁 –u
删除不必要的用户或者组
删除系统默认不使用的帐号,包括:lp、mail、games、ftp、nobody、postfix等。
删除系统默认不使用的组,包括:mail、games、ftp、nobody、postfix等。
禁止超级管理员账户远程登录
修改用户组
1 .密码60天过期,修改密码最小间隔为1天,最短密码要求8位,在密码过期前7天内通知用户。通过修改/etc/login.defs来实现
PASS_MAX_DAYS 90 (用户的密码不过期最多的天数)
PASS_MIN_DAYS 0 (密码修改之间最小的天数)
PASS_MIN_LEN 8 (密码最小长度)
PASS_WARN_AGE 7 (口令失效前多少天开始通知用户更改密码)
2 .启用帐号锁定策略,连续输错3次口令,锁定用户5分钟。修改配置文件/etc/pam.d/system-auth
3 .启用帐号锁定策略,连续输错3次口令,锁定用户30分钟。修改配置文件/etc/pam.d/system-auth
1、配置前备份配置文件/etc/pam.d/sshd
cp -r /etc/pam.d/sshd/etc/pam.d/sshd.bak
2、设置当用户连续输入密码三次时,锁定该用户30分钟
修改配置文件/etc/pam.d/sshd,在配置文件的第二行添加内容:
auth required pam_tally2.so deny=3 unlock_time=300
不活动用户5分钟误操作自动登出
修改配置文件/etc/profile,在末尾加入以下内容 :TMOUT=300

设置用户不能使用最近三次使用过的密码
1、配置前备份配置文件/etc/pam.d/system-auth
cp -r /etc/pam.d/system-auth /etc/pam.d/system-auth.bak

2、配置用户不能使用最近三次使用的密码
修改配置文件/etc/pam.d/system-auth,找到行”password sufficient pam_unix.so sha512 shadow nulloktry_first_pass use_authtok”,在最后加入remember=3

禁止root用户远程登录

1、修改前备份ssh配置文件/etc/ssh/sshd_conf
cp -r /etc/ssh/sshd_config/etc/ssh/sshd_config.bak
2、修改ssh服务配置文件不允许root用户远程登录
编辑/etc/ssh/sshd_config找到“#PermitRootLogin yes”去掉注释并修改为“PermitRootLoginno”
3、 修改完成后重启ssh服务
service sshd restart

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值