进程,自动化任务与安全

进程

    进程就是一段存储了一个指令集的内存空间
    相关命令:
        pstree:显示当前运行的进程树,按树状结构显示
            pstree -p:显示当前进程树,并显示所有进程的PID
        ps:显示当前进程的快照
            ps aux:详细显示当前运行的所有进程
            ps axo pid,ppid,comm,pcpu,pmum,user,group,ni,pri:打印进程的特定信息
            ps -eF:显示当前运行的所有进程,同ps aux
            ps -u root:显示root用户运行的进程
            ps -t pty/1:显示在pty/1终端运行的进程
        pidof:通过程序名查找进程PID
            pidof httpd:查看进程httpd的进程PID
            pidof -x /bin/bash:查看系统运行的bash脚本PID
        pgrep:通过程序名字匹配进程PID
            pgrep -l -u root:显示通过root运行的进程
            pgrep -l -t pty/1:显示通过pty/1运行的进程
            pgrep -l httpd:显示httpd运行的进程关PID
        top:是一种字符界面的系统进程动态监控程序
            top控制子命令:
                1:展开所有CPU,显示每一个CPU的信息
                t:关闭或者显示CPU的进度条
                m:关闭或者显示内存的进度条
                l:关闭或显示负载的相关信息
                P:按进程所占CPU比率排序
                M:按内在比例进行排序
                T:按运行时间进进行排序
            top -p PID:只显示指定的PID的进程的动态信息
        htop:和top类似
        glances:是一种跨平台的多窗口的显示工具
            glances -s -B 172.18.35.1 //启动服务端
            glances -c 172.18.35.1   //客户端连接服务端
        pmap:显示进程的内存位图
            pmap pidof sshd:显示sshd的内存位图
        vmstat:统计显示虚拟内存信息
            vmstat 1:每一秒刷新一下虚拟内存信息
        dstat:产生系统资源统计的一种通用工具
        kill:信号发射器
            -l:显示信号列表
            -n PID:对特定PID执行特定信号,n为数字
        pkill:杀死匹配到的特定进程
             pkill -u root:杀死所有root运行的进程
             pkill -t pts/1:杀死所有终端pts/1上运行的所有进程
        jobs:显示所台运行的程序
             jobs -p:显示进程号
        bg:将程序放入后台执行
             bg n:将后台暂停的进程n在后台运行
        fg:将后台的进程调入前台
        nohup:不以终端为基础执行程序
             nohup make &:终端断开不会停止编译

自动化任务:

crontab:
* * * * *
     第一星:表示分钟:每分钟执行可以表示为0-60 * * * *,每两分钟可以表示为0-60/2 * * * *
     每二星:表示小时:在每天的2:30执行表示为30 2 * * *,在每个小时执行一次1 0-23 * * *
     每三星:表不天:在每个月的3日2:20分执行20 2 3 * *
     第四星:表示月:在每年的3月1日0时1分执行1 0 1 MAR *
     每五星:表法周:在每周的五的2:20分执行20 2 * * fri
     秒级任务不支持,可以能过脚本实现

安全:

服务器遭到攻击后的处理过程:
            处理思路:
                切断网络:
                查找攻击源:
                    查看可疑程序
                分析入侵原因和途径:
                    查看入侵方式,如系统、程序漏洞,进行漏洞修复
                备份用户数据:
                    备份数据,查看数据中是否有攻击源
                重新安装系统:
                    防止攻击程序依附在内核中
                修复程序或者系统漏洞:
                恢复数据和网络:
            检查并锁定可疑用户:
                如果无法马上切断网络,那么需要查看是否有那些可疑用户正在登陆,锁定并踢出
                    passwd -l USERNAME      //锁定用户
                    ps -ef |grep @pts/3     //查看pid
                    kill -9 pid             //干掉它
                查看用户登陆事件:
                    last命令:
                查看系统日志:
                    /var/messages与/var/log/secure
                    .bash_history记录着所有历史命令
                检查并关闭系统可疑进程:
                    查看正在运行的PID进程:
                        pidof PROGRAM               //通过程序查看PID
                        fuser -n tcp/udp PORT       //通过端口号查看PID
                        ps -ef |grep pid            //通过pid查看
                    如果系统被rootkit入侵,那么所有的系统程序都可能已经被替换,是不可信的,这时需要借助第三方工具进行检查
                        chkrootkit          //检查不一定正确
                        RKHunter            //主要推举
                    检查文件系统的完整性
                        rpm -Va
                            S表示文件长度发生了变化
                            M表示文件的访问权限或文件类型发生了变化
                            5表示文件的MD5校验发生了变化
                            D表示设备节点的属性发生了变化
                            L表示文件的符号链接发生了变化
                            U表示owner发生了变化
                            G表示group发生了变化
                            T表示最后一次修改时间发生了变化
        注:如果发现有特殊进程的存在可以通过PID打到进程的启动文件
            ls -l /proc/PID/exe:这个是启动程序文件的软链接,可以清楚软链接指向的文件,然后再kill PID,防止后门复活

原创文章,作者:gaomei,如若转载,请注明出处:http://www.178linux.com/72332

(0)
gaomeigaomei
上一篇 2017-04-01
下一篇 2017-04-02

相关推荐

  • 宣言

    我是一个新手  但是我想认真努力学好linux     有朝一日能成为别人眼中的大牛再回头看看现在 不会后悔  付出必然会有回报  虽千万人吾往矣!

    Linux干货 2016-10-24
  • Linux源码包安装详解

    安装源码包 安装一个源码包,是需要我们自己把源代码编译成二进制的可执行文件。如果你读得懂这些源代码,那么你就可以去修改这些源代码自定义功能,然后再去编译成你想要的。使用源码包的好处除了可以自定义修改源代码外还可以定制相关的功能,因为源码包在编译的时候是可以附加额外的选项的。 源码包的编译用到了linux系统里的编译器,常见的源码包一般都是用C语言开发的,这也…

    Linux干货 2016-09-06
  • 网络配置——命令家族

    Linux网络属性配置命令: ifcfg家族:ifconfig,route,netstat ifconfig命令:接口及地址查看和管理          ·ifconfig [INTERFACE]       &nbsp…

    Linux干货 2016-09-07
  • week3

    一,列出当前系统上所有已经登录的用户的用户名,注意,同一个用户登录多次只显示一次即可 who | cut -d' ' -f1 | sort -u 二,取出最后登录到当前系统的用户相关信息 who | cut -d'&nb…

    Linux干货 2016-11-15
  • 第五周 练习

    1、显示当前系统上root、fedora或user1用户的默认shell; 1.  egrep "^(root|user1|fedora)" /etc/passwd|cut –d: –f7   2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:h…

    Linux干货 2016-11-28
  • CentOS多网卡单个ip和单个网卡多个ip的设置

    一、单个网卡设置一个IP地址     1.初始状态已添加一个网卡eth0,并设置的均为自动获取IP地址,如下图所示:网卡为eth0,ip地址为10.1.249.36;为了后续实验的顺利进行,我们把NetworkManager服务关闭     chkconfig NetworkMa…

    Linux干货 2016-09-06