Monthly Archives: 四月 2017

四月 30th, 2017

升级Python后yum不可用的解决方案

在Centos官网上查到了一篇文档,方法如下。

首先找到你安装Centos的光盘或者ISO文件,只要系统版本一样即可。拷贝如下文件到系统某目录中:

python-2.6.6-36.el6.x86_64.rpm

python-urlgrabber-3.9.1-8.el6.noarch.rpm

python-devel-2.6.6-36.el6.x86_64.rpm

python-libs-2.6.6-36.el6.x86_64.rpm

yum-3.2.29-40.el6.centos.noarch.rpm

具体版本号,根据你系统盘或者ISO提供为准。

rpm -Uvh –replacepkgs *.rpm

#出现如下提示

Preparing… ########################################### [100%]

1:python-libs ########################################### [ 20%]

2:python ########################################### [ 40%]

3:python-urlgrabber ########################################### [ 60%]

4:yum ########################################### [ 80%]

5:python-devel ########################################### [100%]

执行yum命令,你熟悉的界面出现了~~

php安装

rpm -qa | grep php | xargs rpm -e –nodeps

yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml

semanage port -l|grep http
semanage port -a -t http_port_t -p tcp 9910   当开启selinux,则需要执行这个命令,如果selinux关闭,则不用执行这个命令增加端口进去。

/etc/init.d/httpd start

TAGS: ,
四月 30th, 2017

yum安装vsftpd程序:

yum install vsftpd -y

2、修改配置文件

vi /etc/vsftpd/vsftpd.conf

#虚拟用户配置文件的目录

user_config_dir=/etc/vsftpd/ftpuser

#是否允许anonymous登录FTP服务器

anonymous_enable=NO

#//是否允许本地用户登录FTP服务器,默认是允许

local_enable=YES

#//是否允许用户具有在FTP服务器文件中执行写的权限,默认是允许

write_enable=YES

local_umask=022

anon_upload_enable=YES

virtual_use_local_privs=yes

anon_mkdir_write_enable=YES

anon_world_readable_only=YES

xferlog_enable=YES

connect_from_port_20=YES

listen_port=21

ftp_data_port=20

xferlog_file=/var/log/xferlog

xferlog_std_format=NO

ftpd_banner=Welcome to FTP service

chroot_local_user=yes

listen=YES

userlist_enable=YES

tcp_wrappers=YES

syslog_enable=yes

port_enable=YES

chown_uploads=YES

#设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下

pam_service_name=meizu_ftp

#是否启用来宾用户(也就是启用虚拟用户)

guest_enable=YES

#如果启用了虚拟用户后上传文件修改文件的用户名

guest_username=mzftp

use_localtime=YES

connect_timeout=600

data_connection_timeout=600

idle_session_timeout=600

3、在/etc/vsftpd/下创建存放虚拟用户的认证文件

mkdir /etc/vsftpd/ftpuser

4、为虚拟用户创建对应的文件,如:ftptest

vim /etc/vsftpd/ftpuser/ftptest

local_root=/data/ftpdata/ftp1

anon_world_readable_only=no

write_enable=yes

anon_upload_enable=yes

anon_mkdir_write_enable=YES

anon_other_write_enable=yes

创建ftptest虚拟用户对应的ftp存放目录: mkdir -p /data/ftpdata/ftp1

5、生成虚拟用户的账号密码db数据库文件

vim /etc/vsftpd/login.txt   #奇数行 用户名,双数行 密码

ftptest

test123456

mzwentai

wentai@111.com

db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db

(ps:增加用户是重复这部操作)

6、更改pam认证模块

vim /etc/pam.d/meizu_ftp  #这个文件名要与主配置文件中的pam_service_name指定的一致,最后面的login就是login.db,但是这里的后缀是不需要写的

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login

7、创建用户mzftp ,赋mzftp目录权限 #这个要与主配置文件中的guest_username指定的一致

useradd -s /sbin/nologin mzftp

chown -R mzftp.mzftp /data/ftpdata/ftp1

8、启动服务

service vsftpd start

测试:

在我的电脑上输入 ftp://10.3.135.199 登陆,用户密码登陆ftptest/test123456

新建个文件夹,然后从我的电脑复制个文件,粘贴过去,有权限表示测试成功

TAGS: ,
四月 30th, 2017

Glances 是一个用于监控系统的跨平台、基于文本模式的命令行工具。它是用 Python 编写的,使用 psutil 库从系统获取信息。你可以用它来监控 CPU、平均负载、内存、网络接口、磁盘 I/O,文件系统空间利用率、挂载的设备、所有活动进程以及消耗资源最多的进程。Glances 有很多有趣的选项。它的主要特性之一是可以在配置文件中设置阀值(careful小心warning警告critical致命),然后它会用不同颜色显示信息以表明系统的瓶颈。

Glances 的功能

  • CPU 平均负载
  • 不同状态(如活动、休眠)进程的数量
  • 所有内存信息,如物理内存、交换空间、空闲内存
  • CPU 信息
  • 网络连接的上行/下行速度
  • 磁盘 I/O 读/写速度详细信息
  • 当前挂载设备的磁盘使用情况
  • 消耗资源最多的进程和他们的 CPU/内存使用情况

安装 Glances

Glances 在 Ubuntu 的软件仓库中,所以安装很简单。执行下面的命令安装 Glances:

  1. sudo apt-get install glances

(LCTT 译注:若安装后无法正常使用,可考虑使用 pip 安装/升级 glances:sudo pip install --upgrade glances

Glances 使用方法

安装完成后,可以执行下面的命令启动 Glances:

  1. glances

你将看到类似下图的输出:

glances monitor system output

glances monitor system output

要退出 Glances 终端,按 ESC 键或 Ctrl + C

默认情况下,时间间隔(LCTT 译注:显示数据刷新的时间间隔)是 1 秒,不过你可以在从终端启动 Glances 时自定义时间间隔。

要把时间间隔设为 5 秒,执行下面的命令:

  1. glances -t 5

Glances 中不同颜色含义

Glances 中不同颜色的含义:

  • 绿色:正常(OK)
  • 蓝色:小心(careful)
  • 紫色:警告(warning)
  • 红色:致命(critical)

默认设置下,Glances 的阀值设置是:careful=50,warning=70,critical=90。你可以通过 “/etc/glances/” 目录下的默认配置文件 glances.conf 来自定义这些阀值。

Glances 的选项

Glances 提供了很多快捷键,可以在它运行时用来查找输出信息。

下面是一些常用的热键列表:

  • m : 按内存占用排序进程
  • p : 按进程名称排序进程
  • c : 按 CPU 占用率排序进程
  • i : 按 I/O 频率排序进程
  • a : 自动排序进程
  • d : 显示/隐藏磁盘 I/O 统计信息
  • f : 显示/隐藏文件系统统计信息
  • s : 显示/隐藏传感器统计信息
  • y : 显示/隐藏硬盘温度统计信息
  • l : 显示/隐藏日志
  • n : 显示/隐藏网络统计信息
  • x : 删除警告和严重日志
  • h : 显示/隐藏帮助界面
  • q : 退出
  • w : 删除警告记录

使用 Glances 监控远程系统

你也可以使用 Glances 监控远程系统。要在远程系统上使用它,使用下面的命令:

  1. glances -s

你会看到类似下面的输出:

glances monitor remote system server

glances monitor remote system server

如你所见,Glances 运行在 61209 端口。

现在,到远程机器上执行下面的命令以连接到指定 IP 地址的 Glances 服务器上。假设 192.168.1.10 是你的 Glances 服务器 IP 地址。

  1. glances -c -P 192.168.1.10
四月 30th, 2017

进程process是指正在执行的程序;是程序正在运行的一个实例。它由程序指令,和从文件、其它程序中读取的数据或系统用户的输入组成。

进程的类型

在 Linux 中主要有两种类型的进程:

  • 前台进程(也称为交互式进程) – 这些进程由终端会话初始化和控制。换句话说,需要有一个连接到系统中的用户来启动这样的进程;它们不是作为系统功能/服务的一部分自动启动。
  • 后台进程(也称为非交互式/自动进程) – 这些进程没有连接到终端;它们不需要任何用户输入。

什么是守护进程daemon

这是后台进程的特殊类型,它们在系统启动时启动,并作为服务一直运行;它们不会死亡。它们自发地作为系统任务启动(作为服务运行)。但是,它们能被用户通过 init 进程控制。

Linux 进程状态

Linux 进程状态

在 Linux 中创建进程

(LCTT 译注:此节原文不确,根据译者理解重新提供)

在 Linux 中创建进程有三种方式:

fork() 方式

使用 fork() 函数以父进程为蓝本复制一个进程,其 PID号与父进程 PID 号不同。在 Linux 环境下,fork() 是以写复制实现的,新的子进程的环境和父进程一样,只有内存与父进程不同,其他与父进程共享,只有在父进程或者子进程进行了修改后,才重新生成一份。

system() 方式

system() 函数会调用 /bin/sh –c command 来执行特定的命令,并且阻塞当前进程的执行,直到 command 命令执行完毕。新的子进程会有新的 PID。

exec() 方式

exec() 方式有若干种不同的函数,与之前的 fork() 和 system() 函数不同,exec() 方式会用新进程代替原有的进程,系统会从新的进程运行,新的进程的 PID 值会与原来的进程的 PID 值相同。

Linux 如何识别进程?

由于 Linux 是一个多用户系统,意味着不同的用户可以在系统上运行各种各样的程序,内核必须唯一标识程序运行的每个实例。

程序由它的进程 ID(PID)和它父进程的进程 ID(PPID)识别,因此进程可以被分类为:

  • 父进程 – 这些是在运行时创建其它进程的进程。
  • 子进程 – 这些是在运行时由其它进程创建的进程。

init 进程

init 进程是系统中所有进程的父进程,它是启动 Linux 系统后第一个运行的程序;它管理着系统上的所有其它进程。它由内核自身启动,因此理论上说它没有父进程。

init 进程的进程 ID 总是为 1。它是所有孤儿进程的收养父母。(它会收养所有孤儿进程)。

查找进程 ID

你可以用 pidof 命令查找某个进程的进程 ID:

  1. # pidof systemd
  2. # pidof top
  3. # pidof httpd

查找 Linux 进程 ID

查找 Linux 进程 ID

要查找当前 shell 的进程 ID 以及它父进程的进程 ID,可以运行:

  1. $ echo $$
  2. $ echo $PPID

查找 Linux 父进程 ID

查找 Linux 父进程 ID

在 Linux 中启动进程

每次你运行一个命令或程序(例如 cloudcmd – CloudCommander),它就会在系统中启动一个进程。你可以按照下面的方式启动一个前台(交互式)进程,它会被连接到终端,用户可以发送输入给它:

  1. # cloudcmd

启动 Linux 交互进程

启动 Linux 交互进程

Linux 后台任务

要在后台(非交互式)启动一个进程,使用 & 符号,此时,该进程不会从用户中读取输入,直到它被移到前台。

  1. # cloudcmd &
  2. # jobs

在后台启动 Linux 进程

在后台启动 Linux 进程

你也可以使用 Ctrl + Z 暂停执行一个程序并把它发送到后台,它会给进程发送 SIGSTOP 信号,从而暂停它的执行;它就会变为空闲:

  1. # tar -cf backup.tar /backups/* ### 按下 Ctrl+Z
  2. # jobs

要在后台继续运行上面被暂停的命令,使用 bg 命令:

  1. # bg

要把后台进程发送到前台,使用 fg 命令以及任务的 ID,类似:

  1. # jobs
  2. # fg %1

Linux 后台进程任务

Linux 后台进程任务

 

Linux 中进程的状态

在执行过程中,取决于它的环境一个进程会从一个状态转变到另一个状态。在 Linux 中,一个进程有下面的可能状态:

  • Running – 此时它正在运行(它是系统中的当前进程)或准备运行(它正在等待分配 CPU 单元)。
  • Waiting – 在这个状态,进程正在等待某个事件的发生或者系统资源。另外,内核也会区分两种不同类型的等待进程;可中断等待进程interruptible waiting processes – 可以被信号中断,以及不可中断等待进程uninterruptible waiting processes– 正在等待硬件条件,不能被任何事件/信号中断。
  • Stopped – 在这个状态,进程已经被停止了,通常是由于收到了一个信号。例如,正在被调试的进程。
  • Zombie – 该进程已经死亡,它已经停止了但是进程表process table中仍然有它的条目。

如何在 Linux 中查看活跃进程

有很多 Linux 工具可以用于查看/列出系统中正在运行的进程,两个传统众所周知的是 ps 和 top 命令:

1. ps 命令

它显示被选中的系统中活跃进程的信息,如下图所示:

  1. # ps
  2. # ps -e | head

列出 Linux 活跃进程

列出 Linux 活跃进程

2. top – 系统监控工具

top 是一个强大的工具,它能给你提供 运行系统的动态实时视图,如下面截图所示:

  1. # top

列出 Linux 正在运行的程序

列出 Linux 正在运行的程序

 

3. glances – 系统监控工具

glances 是一个相对比较新的系统监控工具,它有一些比较高级的功能:

  1. # glances

Glances – Linux 进程监控

Glances – Linux 进程监控

 

如何在 Linux 中控制进程

Linux 也有一些命令用于控制进程,例如 killpkillpgrepkillall,下面是一些如何使用它们的基本事例:

  1. $ pgrep -u tecmint top
  2. $ kill 2308
  3. $ pgrep -u tecmint top
  4. $ pgrep -u tecmint glances
  5. $ pkill glances
  6. $ pgrep -u tecmint glances

控制 Linux 进程

注意当你系统僵死freeze时你可以使用它们杀死 Linux 中的不响应程序。

给进程发送信号

Linux 中控制进程的基本方法是给它们发送信号。你可以发送很多信号给一个进程,运行下面的命令可以查看所有信号:

  1. $ kill -l

列出所有 Linux 信号

列出所有 Linux 信号

要给一个进程发送信号,可以使用我们之前提到的 killpkillpgrep 命令。但只有被编程为能识别这些信号时程序才能响应这些信号。

大部分信号都是系统内部使用,或者给程序员编写代码时使用。下面是一些对系统用户非常有用的信号:

  • SIGHUP 1 – 当控制它的终端被被关闭时给进程发送该信号。
  • SIGINT 2 – 当用户使用 Ctrl+C 中断进程时控制它的终端给进程发送这个信号。
  • SIGQUIT 3 – 当用户发送退出信号 Ctrl+D 时给进程发送该信号。
  • SIGKILL 9 – 这个信号会马上中断(杀死)进程,进程不会进行清理操作。
  • SIGTERM 15 – 这是一个程序终止信号(kill 默认发送这个信号)。
  • SIGTSTP 20 – 它的控制终端发送这个信号给进程要求它停止(终端停止);通过用户按 Ctrl+Z 触发。

下面是当 Firefox 应用程序僵死时通过它的 PID 杀死它的 kill 命令事例:

  1. $ pidof firefox
  2. $ kill 9 2687
  3. $ kill -KILL 2687
  4. $ kill -SIGKILL 2687

使用它的名称杀死应用,可以像下面这样使用 pkill 或 killall:

  1. $ pkill firefox
  2. $ killall firefox

更改 Linux 进程优先级

在 Linux 系统中,所有活跃进程都有一个优先级以及 nice 值。有比点优先级进程有更高优先级的进程一般会获得更多的 CPU 时间。

但是,有 root 权限的系统用户可以使用 nicerenice 命令影响(更改)优先级。

在 top 命令的输出中, NI 显示了进程的 nice 值:

  1. $ top

列出 Linux 正在运行的进程

列出 Linux 正在运行的进程

使用 nice 命令为一个进程设置 nice 值。记住一个普通用户可以给他拥有的进程设置 0 到 20 的 nice 值。

只有 root 用户可以使用负的 nice 值。

要重新设置一个进程的优先级,像下面这样使用 renice 命令:

  1. $ renice +8 2687
  2. $ renice +8 2103
TAGS: ,
四月 29th, 2017

对于购买Cpanel授权的用户,若修改了SSH登录端口,突然又忘记了,可以在Cpanel中查看:

具体如下图:防火墙>>监听端口

image

image2

这样就可以看到ssh的端口了.

 

同样可以在Cpanel防火墙中,查看防火墙策略来排除相应端口

 

四月 28th, 2017
SSH 文件传输协议SSH File transfer protocol(SFTP)也称为通过安全套接层的文件传输协议File Transfer protocol via Secure Socket Layer, 以及 FTPS 都是最常见的安全 FTP 通信技术,用于通过 TCP 协议将计算机文件从一个主机传输到另一个主机。SFTP 和 FTPS 都提供高级别文件传输安全保护,通过强大的算法(如 AES 和 Triple DES)来加密传输的数据。
                                                         

FTPS 是使用安全套接层(SSL)证书的 FTP 安全技术。整个安全 FTP 连接使用用户 ID、密码和 SSL 证书进行身份验证。一旦建立 FTPS 连接,FTP 客户端软件将检查目标 FTP 服务器证书是否可信的。

如果证书由已知的证书颁发机构(CA)签发,或者证书由您的合作伙伴自己签发,并且您的信任密钥存储区中有其公开证书的副本,则 SSL 证书将被视为受信任的证书。FTPS 所有的用户名和密码信息将通过安全的 FTP 连接加密。

以下是 FTPS 的优点和缺点:

优点:

  • 通信可以被人们读取和理解
  • 提供服务器到服务器文件传输的服务
  • SSL/TLS 具有良好的身份验证机制(X.509 证书功能)
  • FTP 和 SSL 支持内置于许多互联网通信框架中

缺点:

  • 没有统一的目录列表格式
  • 需要辅助数据通道(DATA),这使得难以通过防火墙使用
  • 没有定义文件名字符集(编码)的标准
  • 并非所有 FTP 服务器都支持 SSL/TLS
  • 没有获取和更改文件或目录属性的标准方式

SFTP 或 SSH 文件传输协议是另一种安全的安全文件传输协议,设计为 SSH 扩展以提供文件传输功能,因此它通常仅使用 SSH 端口用于数据传输和控制。当 FTP 客户端软件连接到 SFTP 服务器时,它会将公钥传输到服务器进行认证。如果密钥匹配,提供任何用户/密码,身份验证就会成功。

以下是 SFTP 优点和缺点:

优点:

  • 只有一个连接(不需要 DATA 连接)。
  • FTP 连接始终保持安全
  • FTP 目录列表是一致的和机器可读的
  • FTP 协议包括操作权限和属性操作,文件锁定和更多的功能。

缺点:

  • 通信是二进制的,不能“按原样”记录下来用于人类阅读,
  • SSH 密钥更难以管理和验证。
  • 这些标准定义了某些可选或推荐的选项,这会导致不同供应商的不同软件之间存在某些兼容性问题。
  • 没有服务器到服务器的复制和递归目录删除操作
  • 在 VCL 和 .NET 框架中没有内置的 SSH/SFTP 支持。

大多数 FTP 服务器软件这两种安全 FTP 技术都支持,以及强大的身份验证选项。

但 SFTP 显然是赢家,因为它适合防火墙。SFTP 只需要通过防火墙打开一个端口(默认为 22)。此端口将用于所有 SFTP 通信,包括初始认证、发出的任何命令以及传输的任何数据。

FTPS 通过严格安全的防火墙相对难以实现,因为 FTPS 使用多个网络端口号。每次进行文件传输请求(get,put)或目录列表请求时,需要打开另一个端口号。因此,必须在您的防火墙中打开一系列端口以允许 FTPS 连接,这可能是您的网络的安全风险。

支持 FTPS 和 SFTP 的 FTP 服务器软件:

  • Cerberus FTP 服务器
  • FileZilla – 最著名的免费 FTP 和 FTPS 服务器软件
  • Serv-U FTP 服务器
四月 27th, 2017

黑客入侵一台主机后,会想方设法保护自己的“劳动成果”,因此会在肉鸡上留下种种后门来长时间得控制肉鸡,其中使用最多的就是账户隐藏技术。

在隐藏系统账户之前,我们有必要先来了解一下如何才能查看系统中已经存在的账户。在系统中可以进入“命令提示符”,控制面板的“计算机管理”,“注册表”中对存在的账户进行查看,而管理员一般只在 “命令提示符”和“计算机管理”中检查是否有异常,因此如何让系统账户在这两者中隐藏将是本文的重点 。

一、“命令提示符”中的阴谋

其实,制作系统隐藏账户并不是十分高深的技术,利用我们平时经常用到的“命令提示符”就可以制作一个简单的隐藏账户。

点击“开始”→“运行”,输入“CMD”运行“命令提示符”,输入“net user kao$ 123456 /add”, 回车,成功后会显示“命令成功完成”。接着输入“net localgroup administrators kao$ /add”回车, 这样我们就利用“命令提示符”成功得建立了一个用户名为“kao$”,密码为“123456”的简单“隐藏账户 ”,并且把该隐藏账户提升为了管理员权限。

.建立一个简单的隐藏帐户

我们来看看隐藏账户的建立是否成功。在“命令提示符”中输入查看系统账户的命令“net user”,回 车后会显示当前系统中存在的账户。从返回的结果中我们可以看到刚才我们建立的“kao$”这个账户并不存 在。接着让我们进入控制面板的“管理工具”,打开其中的“计算机”,查看其中的“本地用户和组”,在 “用户”一项中,我们建立的隐藏账户“kao$”暴露无疑。

可以总结得出的结论是:这种方法只能将账户在“命令提示符”中进行隐藏,而对于“计算机管理”则 无能为力。因此这种隐藏账户的方法并不是很实用,只对那些粗心的管理员有效,是一种入门级的系统账户 隐藏技术。

 

二、在“注册表”中玩转账户隐藏

从上文中我们可以看到用命令提示符隐藏账户的方法缺点很明显,很容易暴露自己。那么有没有可以在 “命令提示符”和“计算机管理”中同时隐藏账户的技术呢?答案是肯定的,而这一切只需要我们在“注册 表”中进行一番小小的设置,就可以让系统账户在两者中完全蒸发。

1、峰回路转,给管理员注册表操作权限

在注册表中对系统账户的键值进行操作,需要到“HKEY_LOCAL_MACHINESAM\SAM”处进行修改,但是当我 们来到该处时,会发现无法展开该处所在的键值。这是因为系统默认对系统管理员给予“写入D AC”和“读 取控制”权限,没有给予修改权限,因此我们没有办法对“SAM”项下的键值进行查看和修改。不过我们可以借助系统中另一个“注册表编辑器”给管理员赋予修改权限。

点击“开始”→“运行”,输入“regedt32.exe”后回车,随后会弹出另一个“注册表编辑器”,和我 们平时使用的“注册表编辑器”不同的是它可以修改系统账户操作注册表时的权限(为便于理解,以下简称 regedt32.exe)。在regedt32.exe中来到“HKEY_LOCAL_MACHINE\SAM\SAM”处,点击“安全”菜单→“权限” ,在弹出的“SAM的权限”编辑窗口中选中“administrators”账户,在下方的权限设置处勾选“完全控制 ”,完成后点击“确定”即可。然后我们切换回“注册表编辑器”,可以发现“HKEY_LOCAL_MACHINE\SAM\SAM ”下面的键值都可以展开了。

提示:上文中提到的方法只适用于Windows NT/2000系统。在Windows XP系统中,对于权限的操作可以直接在注册表中进行,方法为选中需要设置权限的项,点击右键,选择“权限”即可。

2、偷梁换柱,将隐藏账户替换为管理员

成功得到注册表操作权限后,我们就可以正式开始隐藏账户的制作了。来到注册表编辑器的 “HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\UsersNames”处,当前系统中所有存在的账户都会在这里显示 ,当然包括我们的隐藏账户。点击我们的隐藏账户“kao$”,在右边显示的键值中的“类型”一项显示为 0x3e9,向上来到“HKEY_LOCAL_MACHINE\SAMS\AMDomains\Account\Users”处,可以找到“000003E9”这一项, 这两者是相互对应的,隐藏账户“kao$”的所有信息都在“000003E9”这一项中。同样的,我们可以找到“ administrator”账户所对应的项为“000001F4”。

将“kao$”的键值导出为kao$.reg,同时将“000003E9”和“000001F4”项的F键值分别导出为 user.reg,admin.reg。用“记事本”打开admin.reg,将其中“F”值后面的内容复制下来,替换user.reg 中的“F”值内容,完成后保存。接下来进入“命令提示符”,输入“net user kao$ /del”将我们建立的 隐藏账户删除。最后,将kao$.reg和user.reg导入注册表,至此,隐藏账户制作完成。

3、过河拆桥,切断删除隐藏账户的途径

虽然我们的隐藏账户已经在“命令提示符”和“计算机管理”中隐藏了,但是有经验的系统管理员仍可 能通过注册表编辑器删除我们的隐藏账户,那么如何才能让我们的隐藏账户坚如磐石呢?

打开“regedt32.exe”,来到“HKEY_LOCAL_MACHINE\SAM\SAM”处,设置“SAM”项的权限,将 “administrators”所拥有的权限全部取消即可。当真正的管理员想对“HKEY_LOCAL_MACHINE\SAM\SAM”下面 的项进行操作的时候将会发生错误,而且无法通过“regedt32.exe”再次赋予权限。这样没有经验的管理员 即使发现了系统中的隐藏账户,也是无可奈何的。

 

三.专用工具,使账户隐藏一步到位

虽然按照上面的方法可以很好得隐藏账户,但是操作显得比较麻烦,并不适合新手,而且对注册表进行 操作危险性太高,很容易造成系统崩溃。因此我们可以借助专门的账户隐藏工具来进行隐藏工作,使隐藏账 户不再困难,只需要一个命令就可以搞定。

我们需要利用的这款工具名叫“HideAdmin”,下载下来后解压到c盘。然后运行“命令提示符”,输入 “HideAdmin kao$ 123456”即可,如果显示“Create a hiden Administrator kao$ Successed!”,则表 示我们已经成功建立一个账户名为kao$,密码为123456的隐藏账户。利用这款工具建立的账户隐藏效果和上 文中修改注册表的效果是一样的。

 

四、把“隐藏账户”请出系统

隐藏账户的危害可谓十分巨大。因此我们有必要在了解了账户隐藏技术后,再对相应的防范技术作一个 了解,把隐藏账户彻底请出系统

1、添加“$”符号型隐藏账户

对于这类隐藏账户的检测比较简单。一般黑客在利用这种方法建立完隐藏账户后,会把隐藏账户提升为 管理员权限。那么我们只需要在“命令提示符”中输入“net localgroup administrators”就可以让所有 的隐藏账户现形。如果嫌麻烦,可以直接打开“计算机管理”进行查看,添加“$”符号的账户是无法在这 里隐藏的。

2、修改注册表型隐藏账户

由于使用这种方法隐藏的账户是不会在“命令提示符”和“计算机管理”中看到的,因此可以到注册表 中删除隐藏账户。来到“HKEY_LOCAL_MACHINESAMSAMDomainsAccountUsersNames”,把这里存在的账户和“ 计算机管理”中存在的账户进行比较,多出来的账户就是隐藏账户了。想要删除它也很简单,直接删除以隐 藏账户命名的项即可。

3、无法看到名称的隐藏账户

如果黑客制作了一个修改注册表型隐藏账户,在此基础上删除了管理员对注册表的操作权限。那么管理 员是无法通过注册表删除隐藏账户的,甚至无法知道黑客建立的隐藏账户名称。不过世事没有绝对,我们可 以借助“组策略”的帮助,让黑客无法通过隐藏账户登陆。点击“开始”→“运行”,输入“gpedit.msc” 运行“组策略”,依次展开“计算机配置”→“Windows 设置”→“安全设置”→“本地策略”→“审核策 略”,双击右边的“审核策略更改”,在弹出的设置窗口中勾选“成功”,然后“确定”。对“审核登陆事 件”和“审核过程追踪”进行相同的设置。

 

开启登陆事件审核功能

进行登陆审核后,可以对任何账户的登陆操作进行记录,包括隐藏账户,这样我们就可以通过“计算机 管理”中的“事件查看器”准确得知隐藏账户的名称,甚至黑客登陆的时间。即使黑客将所有的登陆日志删 除,系统还会记录是哪个账户删除了系统日志,这样黑客的隐藏账户就暴露无疑了。通过事件查看器找到隐 藏帐户
得知隐藏账户的名称后就好办了,但是我们仍然不能删除这个隐藏账户,因为我们没有权限。但是我们 可以在“命令提示符”中输入“net user 隐藏账户名称 654321”更改这个隐藏账户的密码。这样这个隐藏账户就会失效,黑客无法再用这个隐藏账户登陆。

四月 26th, 2017
  • 先前我们可以在Linux环境下通过编写shell脚本来执行一些定时的任务,如何定时进行数据备份,钓鱼文件的查找,很方便也可以防止自己忘了,我在想如何也在Windows环境下也实现类似的定时任务的功能,毕竟大家生活和工作中经常最多也就Windows了。如果也可以实现的话,感觉也是蛮好的。网上有相关的文档介绍,大家可以看一下

    @@echo off

    echo.

    echo o(∩_∩)o 亲爱的,该喝水啦!o(∩_∩)o

    echo.

    ping -n 10 127.0.0.1 > null

    rm null

  • 打开【任务计划程序】。以win7为例,路径为【开始】->【附件】->【系统工具】->【任务计划程序】;也可以在【开始】的搜索框里直接输入”任务计划程序”。

  • 在打开的【任务计划程序】对话框中,先点击【任务计划程序库】,然后在右侧点击【创建基本任务】。

    如何创建Windows定时任务
  • 在【创建基本任务向导】对话框中,填写【名称】。填写什么无所谓,用来区分各个任务。然后点击【下一步】。

    如何创建Windows定时任务
  • 选择开始执行频率。根据具体情况来选择。这里选择【每天】,然后下一步,下一步。

    如何创建Windows定时任务
  • 操作这里选择【启动程序】。然后下一步。

    如何创建Windows定时任务
  • 点击【浏览】,找到刚刚保存的程序,然后下一步。

    如何创建Windows定时任务
  • 到这里结束,我们的程序会在每天提醒一次。

    由于我们希望每隔几十分钟来提醒一次,所以勾选【当单击“完成”时,打开此任务属性的对话框】,然后点击【完成】。

    如何创建Windows定时任务
  • 在弹出的任务计划属性对话框中,找到【触发器】选项卡,点击【编辑】。在【触发器】对话框中,勾选【重复任务间隔】,选择一个时间,然后点击【确定】、【确定】,依次关闭对话框。

    至此,我们的定时喝水提醒就做完了。

    如何创建Windows定时任务

 

四月 25th, 2017

交换机基本状态:
switch: ;ROM状态, 路由器是rommon>
hostname> ;用户模式
hostname# ;特权模式
hostname(config)# ;全局配置模式
hostname(config-if)# ;接口状态

交换机口令设置:
switch>enable ;进入特权模式
switch#config terminal ;进入全局配置模式
switch(config)#hostname ;设置交换机的主机名
switch(config)#enable secret xxx ;设置特权加密口令
switch(config)#enable password xxa ;设置特权非密口令
switch(config)#line console 0 ;进入控制台口
switch(config-line)#line vty 0 4 ;进入虚拟终端
switch(config-line)#login ;允许登录
switch(config-line)#password xx ;设置登录口令xx
switch#exit ;返回命令

交换机VLAN设置:
switch#vlan database ;进入VLAN设置
switch(vlan)#vlan 2 ;建VLAN 2
switch(vlan)#no vlan 2 ;删vlan 2
switch(config)#int f0/1 ;进入端口1
switch(config-if)#switchport access vlan 2 ;当前端口加入vlan 2
switch(config-if)#switchport mode trunk ;设置为干线
switch(config-if)#switchport trunk allowed vlan 1,2 ;设置允许的vlan
switch(config-if)#switchport trunk encap dot1q ;设置vlan 中继
switch(config)#vtp domain ;设置发vtp域名
switch(config)#vtp password ;设置发vtp密码
switch(config)#vtp mode server ;设置发vtp模式
switch(config)#vtp mode client ;设置发vtp模式

交换机设置IP地址:
switch(config)#interface vlan 1 ;进入vlan 1
switch(config-if)#ip address ;设置IP地址
switch(config)#ip default-gateway ;设置默认网关
switch#dir flash: ;查看闪存

交换机显示命令:
switch#write ;保存配置信息
switch#show vtp ;查看vtp配置信息
switch#show run ;查看当前配置信息
switch#show vlan ;查看vlan配置信息
switch#show interface ;查看端口信息
switch#show int f0/0 ;查看指定端口信息

四月 25th, 2017

 

 

有客户的网站访问显示资源超限制Resource Limit Is Reached   ,杀了该用户的进程以后再访问就是正常的。

但是马上他的资源进程有达到限制,从cloudliux lve manager 来看他的 max entry progress list 进程一直很高。

从top命令来看,该用户一直占用大量系统资源,还有很多僵尸进程zombie。

 

如何查看Apache僵尸进程

ps -aux | grep ‘Z’      //Z就是僵尸进程,即zombie

发现基本上都是该用户的僵尸进程。

 

批量查杀僵尸进程

ps -ef|grep defunct|grep -v grep|cut -c 9-15|xargs kill -9

杀完僵尸进程以后,发现该客户访问不了了,同服务器上的其他客户也访问不了。

 

我想到很有可能是  apache 进程被误杀了。

重启apache进程。

service httpd restart

问题解决。