Linux 运维与权限管理

  1. 权限管理
  2. 运维指令
  3. 系统服务状态

权限管理

  1. 当命令行提示指令不存在时,可能是非管理员账号没有权限;
  2. 打印java进程的jps指令,只会打印当前用户启动的java进程(root账号会打印所有的),但是ps指令可以看到其他用户的;
  3. susu -指令切换账号的区别是是否切换了当前环境变量。二者都需要知道目标用户的密码才能切换;不指定用户名时默认切换到root用户;
  4. sudo需要知道当前用户密码;

运维指令

telnet 指令

可用于检查特定端口是否开启或直接进行远程连接;

Window默认没有启用这个功能,启用方法:控制面板->程序和功能->启用或关闭Windows功能 -> 勾选 Telnet Client -> 确定

每天一个linux命令(58):telnet命令

telent [ip] [port]

能够连接的端口一般会立即连接;不能连接的端口可能未监听或被防火墙拦住了;

whereis 指令和 which 指令

whereis 可以查找大多数文件(一般是系统目录下的),查找速度快。

whereis mysql
which mysql

which 和 whereis

find 指令

find 命令用来在指定目录下查找文件;会搜索整个文件目录,目录较大时速度比较慢;

find . -name "*.c" # 当前目录下的指定后缀文件

find /home -iname "*.txt" # home 目录下的txt文件,忽略大小写

find . -name "*.txt" -o -name "*.pdf" # 当前目录的txt或pdf文件

find /usr/ -path "*local*"匹配文件路径或者文件

find . -maxdepth 3 -type f # 当前目录递归最多3层的所有文件[f-文件,l-连接,d-目录, c-字符设备,b-块设备,s-套接字]

find . -iregex ".*\(\.txt\|\.pdf\)$" # 正则忽略大小写

find /var/log -type f -mtime +7 -ok rm {} \; # 查找 /var/log 目录中更改时间在 7 日以前的普通文件,并在删除之前询问它们:

find . -type f -perm 644 -exec ls -l {} \;# 查找并列出特定权限的文件

find .type f -size 0 -exec ls -l {} \; # 查找并列出大小为0的文件

iptables 指令

iptables命令 是Linux上常用的防火墙软件

非管理员账号可能看不到该指令:(-bash: iptables: command not found),因为普通用户的环境变量PATH路径中没有/sbin/路径,只有root用户才有执行权限;

https://wangchujiang.com/linux-command/c/iptables.html

iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作

常用指令:

iptables -F # 清空所有防火墙规则
iptables -F INPUT  # 清空指定链 INPUT 上面的所有规则

列出已设置的规则
iptables -L [-t 表名] [链名]
iptables -L -t nat # 列出 nat 上的所有规则
iptables -L -nv  # 查看,这个列表看起来更详细

# 用于配置默认规则
iptables -P INPUT DROP # 配置默认的不让进
iptables -P FORWARD DROP # 默认的不允许转发
iptables -P OUTPUT ACCEPT # 默认的可以出去

# 开启相应的服务端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 开启80端口
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT #允许本地回环接口(即运行本机访问本机)
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT # 允许被ping
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # 已经建立的连接得让它进来
iptables -A INPUT -p tcp -m tcp -s 192.168.0.8 -j DROP  # 屏蔽恶意主机(比如,192.168.0.8
iptables -I INPUT -s 123.45.6.7 -j DROP       #屏蔽单个IP的命令
iptables -I INPUT -s 123.0.0.0/8 -j DROP      #封整个段即从123.0.0.1到123.255.255.254的命令

# 保存规则到配置文件中
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak # 任何改动之前先备份,请保持这一优秀的习惯
iptables-save > /etc/sysconfig/iptables
cat /etc/sysconfig/iptables

系统服务状态

CentOS 7+,Debian9+ 使用systemctl指令查看和管理系统服务

systemctl status [服务名] # 查看服务状态,比如 mysql 或 mysqld

systemctl [start|stop|restart] [服务名] # 启动/停止/重启某服务

systemctl enable mysqld # 将mysql设为开机自启动
systemctl daemon-reload

lsb_release -a # 查看系统版本

ip add # 查看系统IP地址

df -hl # 查看磁盘空间

free -h # 仓看内存空间

top 查看系统运行情况

CentOS 6等低版本的服务器一般使用chkconfig指令检查系统配置状态,使用service指令管理服务

chkconfig --list # 检查服务状态
service [服务名] [start|stop|restart] # 启动/停止/重启某服务器
chkconfig mysqld on # 将mysql 设为开机自启动

在Ubuntu的一些高版本和Window Linux子系统中,chkconfig指令已经不再使用,使用sysv-rc-conf代替(需要安装)

apt-get update
apt-get install sysv-rc-conf
sysv-rc-conf --list

alias sysconf='sysv-rc-conf'

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 using1174@foxmail.com

文章标题: Linux 运维与权限管理

文章字数: 1,211

本文作者: Jun

发布时间: 2021-07-15, 16:50:21

最后更新: 2022-07-11, 17:16:37

原始链接: http://yoursite.com/2021/07/15/Linux-运维相关/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏