1、查看某证书的详细信息,server.crt是对应组件的crt文件;可以校验证书的加密算法,过期时间等

      # openssl x509 -in filename.crt -text -noout

2、验证ssl重协商是否开启(重协商协议开启之后,攻击者很容易利用此协议攻击系统,handshake过程数据都是加密的,被攻击者很难察觉到)

      先查询接口开放的端口和对应的IP

      # netstat -tunpl| grep 8025      //  端口为服务对应的开启端口号

      输入命令之后,再输入R,如果不断输入有返回值,则重协商开启;输入R之后结束,则表示重协商协议关闭

     # openssl s_client -connect ip:port

3、查询空链接文件

      # df -l | awk '{if (NR!=1) print $6}' | xargs -I '{}' find -L '{}' -xdev -type l 2>/dev/null

4、程序中谨慎使用高危命令,防止sudo提权误操作更改系统核心文件与权限,如

      执行rm、chown、chmod等高危命令时,需要先判断文件使用场景,是否软连接文件,可以考虑加-h参数防止更改软连接文件

5、ulimit

       Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,设置各linux 用户的最大进程可以用ulimit -a 来显示当前的各种用户进程限制。

下面我把某linux用户的最大进程数设为10000个:

     ulimit -u 10240

     对于需要做许多 socket 连接并使它们处于打开状态的 Java 应用程序而言,

     最好通过使用 ulimit -n xx 修改每个进程可打开的文件数,缺省值是 1024。

     ulimit -n 4096 将每个进程可以打开的文件数目加大到4096,缺省为1024

     其他建议设置成无限制(unlimited)的一些重要设置是:

     数据段长度:ulimit -d unlimited

     最大内存大小:ulimit -m unlimited

     堆栈大小:ulimit -s unlimited

     CPU 时间:ulimit -t unlimited

     虚拟内存:ulimit -v unlimited

6 解压rpm2为源文件,之后可以查看rpm打包文件内容

       # rpm2cpio $rpm_file | cpio -div

7 绑定和解除IP

        # ip address del ip dev $BASE_BOND

        # ip address add ip dev $BASE_BOND

8、查找无属主的文件,防止新用户自动继承无属主文件权限

        # find / -nouser

9、查看网卡速率

     # /sbin/ethtool eth0 | grep Speed

      # 查看所有网卡

      Ifconfig

10 dmidecode -t memery   可以查看主机对应指标的硬件信息,-t相当于--type

[root@localhost ~]$ dmidecode                          # 打印所有硬件信息
[root@localhost ~]$ dmidecode -q                       # 打印所有硬件信息,比较简洁
[root@localhost ~]$ dmidecode | grep 'Product Name'    # 以过滤的方式来查看指定的硬件信息
[root@localhost ~]$ dmidecode --type bios              # 查看BIOS相关的硬件信息
[root@localhost ~]$ dmidecode --type system            # 查看系统相关的硬件信息
[root@localhost ~]$ dmidecode --type baseboard         # 查看主板相关的硬件信息
[root@localhost ~]$ dmidecode --type chassis           # 查看机箱相关的硬件信息
[root@localhost ~]$ dmidecode --type processor         # 查看处理器相关的硬件信息
[root@localhost ~]$ dmidecode --type memory            # 查看内存相关的硬件信息

11 获取主机的内存信息

         cat /proc/meminfo

12、显示某个进程id的所有子进程

         ps -f --ppid 32481

13、根据进程查询父进程id

         ps -f -p 32487

14Top 命令常用选项(此命令可以用来经常排查系统负载,书写性能监控脚本)

选项:

  • -d 秒数:指定 top 命令每隔几秒更新;默认是 3 秒;
  • -b:使用批处理模式输出。一般和"-n"选项合用,用于把 top 命令重定向到文件中;
  • -n 次数:指定 top 命令执行的次数。一般和"-"选项合用;
  • -p 进程PID:仅查看指定 ID 的进程;
  • -s:使 top 命令在安全模式中运行,避免在交互模式中出现错误;
  • -u 用户名:只监听某个用户的进程;

在 top 命令的显示窗口中,还可以使用如下按键,进行一下交互操作:

  • ? 或 h:显示交互模式的帮助;
  • P:按照 CPU 的使用率排序,默认就是此选项;
  • M:按照内存的使用率排序;
  • N:按照 PID 排序;
  • T:按照 CPU 的累积运算时间排序,也就是按照 TIME+ 项排序;
  • k:按照 PID 给予某个进程一个信号。一般用于中止某个进程,信号 9 是强制中止的信号;
  • r:按照 PID 给某个进程重设优先级(Nice)值;
  • q:退出 top 命令;

15rpm 常用参数(平时登录环境查看代码更新,系统取包时间、包文件信息等)

-ivh:安装显示安装进度--install--verbose--hash

-Uvh:升级软件包--Update;

-qpl:列出RPM软件包内的文件信息[Query Package list];

-qpi:列出RPM软件包的描述信息[Query Package install package(s)];

-qf:查找指定文件属于哪个RPM软件包[Query File];

-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];

-e:删除包

-qa:查看安装哪些包,一般配合grep可以完成包过滤

-qR: 可以查看安装包依赖

--provides  rpm_name 查询套件所提供的兼容度

--qpR: 查看未安装的rpm包依赖