最新AWVS linux完美破解版本

本文所述破解版本,最早由大蝉(https://xs3c.co/)发表于52pojie.cn。使用过程中发现虽破解完毕,但由于源安装文件是test版本,所以大约二周左右仍会出现版本错误。

笔者使用过程中也发现此问题,并且解决了该问题,目前几个月下来并无BUG。

下面是安装破解教程:

Version: 12.0.190325161(25 March 2019)

安装源文件及破解补丁下载:

隐藏的内容:

链接:https://pan.baidu.com/s/10TicQPYnFZlI3X6BvvLLKA
提取码:akn9

系统:Ubuntu 16.04  (centos系列比较容易出错)

前置依赖安装:

apt upgradeapt update
sudo chmod 777 acunetix_trial.sh patch_awvs 
apt-get install libxdamage1 libgtk-3-0 libasound2 libnss3 libxss1 

安装原版本(unzip解压文件夹):

./acunetix_trial.sh 按照提示,交互式输入用户信息。安装完成显示Please visit https://XXXXX:13443/ to access Acunetix UI

安装破解补丁:

cp patch_awvs /home/acunetix/.acunetix_trial/v_190325161/scanner/
cd /home/acunetix/.acunetix_trial/v_190325161/scanner/
./patch_awvs
出现以下提示为破解成功:
< xs3c.co >------------
there you go.

登录系统后,左下角Settings->ProductUpgrades,改为”Do not automaticaly check for update[Not Recommanded]”

至此破解完成。

额外反检测方法:

由于破解的原版本是test版本,大概二周左右会出现

{“stderr”:””,”message”:”License problem”,”exitCode”:40}

通过测试发现每次安装/扫描,WVS会生成以下加密文件:

/home/acunetix/.acunetix_trial/data/license/wa_data.dat

通过对此文件的判断,是否测试版到期。对抗方式:定期定时删除该文件,例如每天凌晨删除,这样下一次的扫描会重新生成该文件,不会作为测试版到期验证。建立一个定时任务删除之:

编辑文件:

vim /etc/crontab
增加两行,目的是每隔10分钟和11分钟,删除下面俩文件
*/10 * * * * root rm /home/acunetix/.acunetix_trial/data/license/wa_data.dat
*/11 * * * * root rm /home/acunetix/.acunetix_trial/data/license/filelock.dat

读者也可以将以下域名加入hosts:

127.0.0.1 bell-net.acunetix.com
127.0.0.1 bellus.acunetix.com
127.0.0.1 bell.acunetix.com
127.0.0.1 beta12updates.acunetix.com
127.0.0.1 erp.acunetix.com
127.0.0.1 feeds.acunetix.com
127.0.0.1 ftp.acunetix.com
127.0.0.1 ideas.acunetix.com
127.0.0.1 mailers.acunetix.com
127.0.0.1 online-27753.acunetix.com
127.0.0.1 online.acunetix.com
127.0.0.1 ovs.acunetix.com
127.0.0.1 sandbox.acunetix.com
127.0.0.1 updates.acunetix.com
127.0.0.1 support.acunetix.com
127.0.0.1 webmail.acunetix.com

 127.0.0.1       www.erpx.com
 127.0.0.1       erpx.com
 127.0.0.1       acunetix.com
 127.0.0.1       erp.acunetix.com
 127.0.0.1       www.acunetix.com
 127.0.0.1       ftp.acunetix.com
 127.0.0.1       webmail.acunetix.com
 127.0.0.1       support.acunetix.com
 127.0.0.1       online.acunetix.com
 127.0.0.1       erp.acunetix.com
 127.0.0.1       updates.acunetix.com
 127.0.0.1       sandbox.acunetix.com
 127.0.0.1       bell.acunetix.com
 127.0.0.1       vulnweb.com
 127.0.0.1       testhtml5.vulnweb.com
 127.0.0.1       testphp.vulnweb.com
 127.0.0.1       testasp.vulnweb.com
 127.0.0.1       testaspnet.vulnweb.com
 127.0.0.1       Erpx.us
 127.0.0.1       Erpx.org
 127.0.0.1       Erpx.net
 127.0.0.1       Erp-x.com
 127.0.0.1       ErpxCloud.com
 127.0.0.1       ErpxPress.com
 127.0.0.1       ErpxPro.com
 127.0.0.1       ErpxTechnology.com
 127.0.0.1       ErpxX.com
 127.0.0.1       ErpxY.com
 127.0.0.1       Erpx3.com
 127.0.0.1       Erpx3sucks.com
 127.0.0.1       Erp-xamai.com
 127.0.0.1       Erpxchange.com
 127.0.0.1       Erpxcx.com
 127.0.0.1       Erpxe.com
 127.0.0.1       Erpxe.net
 127.0.0.1       Erpxe.org
 127.0.0.1       Erpxg.com
 127.0.0.1       Erpxikz.com
 127.0.0.1       Erpxion.com
 127.0.0.1       Erpxiqy.biz
 127.0.0.1       Erpxl.com
 127.0.0.1       Erpxmis.com
 127.0.0.1       Erpxp.com
 127.0.0.1       Erpxp.net
 127.0.0.1       Erpxperience.com
 127.0.0.1       Erp-xpert.com
 127.0.0.1       Erpxpert.com
 127.0.0.1       Erpxperts.com
 127.0.0.1       Erpxql.biz
 127.0.0.1       Erpxr.com
 127.0.0.1       Erpxs.com
 127.0.0.1       Erpxsol.com
 127.0.0.1       Erpxstreem.com
 127.0.0.1       Erpxt.com
 127.0.0.1       Erpxt.net
 127.0.0.1       Erpxtend.com
 127.0.0.1       Erpxuu.us
 127.0.0.1       Erpxyz.com
 127.0.0.1       Erpxzs.com

GoAccess日志分析

这是全部命令记录

1128 wget https://tar.goaccess.io/goaccess-1.3.tar.gz

下载


1129 tar -xzvf goaccess-1.3.tar.gz

解压


1130 cd goaccess-1.3
1131 ls -l
1132 autoreconf -fiv
1133 ./configure –enable-utf8 –enable-geoip=legacy

发现缺少GeoIP
1134 wget https://github.com/maxmind/geoip-api-c/releases/download/v1.6.11/GeoIP-1.6.11.tar.gz

于是下载
1135 tar -xzvf GeoIP-1.6.11.tar.gz
1136 cd GeoIP-1.6.11
1137 ./configure
1138 make
1139 make install

编译安装
1140 cd ..
1141 ls -l
1142 ./configure –enable-utf8 –enable-geoip=legacy

发现缺少ncursesw,于是安装
1144 yum install -y ncurses-devel


1145 ./configure –enable-utf8 –enable-geoip=legacy
1146 make
1147 make install

安装完成,可以执行了
1148 goaccess

1152 goaccess /var/log/httpd/access_log -o /var/www/html/report.html –real-time-html –time-format=’%H:%M:%S’ –date-format=’%d/%b/%Y’ –log-format=COMBINED
指定日志文件进行分析,并且输出到指定目录形成html文件。打开浏览器可以进行访问。

麻省理工学院公开课:计算机科学及编程导论

http://open.163.com/special/opencourse/bianchengdaolun.html

麻省理工学院公开课:计算机科学及编程导论

本课程共24集

课程介绍

这门课程适用于那些拥有很少或没有编程经验的学生,它致力于使学生理解计算机在解决问题中的作用,并且帮助学生,不论其专业,使他们对于能够完成有用的小程序的目标充满信心。h

Socks 5

SS5 官方网站

命令汇总

  • 查看系统环境
uname -a
Linux vultr.guest 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

yum --version
3.4.3
  • 安装依赖
yum install gcc openldap-devel pam-devel openssl-devel
复制代码
  • 下载 socks5
wget http://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz
  • 解压
tar -vzx -f ss5-3.8.9-8.tar.gz
  • 进入目录
cd ss5-3.8.9/
  • 运行./configure,完成环境检查
./configure
  • 编译
make
  • 安装
make install
  • 修改脚本权限
chmod a+x /etc/init.d/ss5
  • 修改 socks5 配置文件,放开 authpermit 注释
vi /etc/opt/ss5/ss5.conf

# 如果需要配置访问权限
# auth 0.0.0.0/0 - u
# permit u 0.0.0.0/0 - 0.0.0.0/0 - - - - -
  • 修改用户密码
vi /etc/opt/ss5/ss5.passwd
# 格式为 用户名 密码
# username password
  • 修改端口
vi /etc/sysconfig/ss5

# SS5_OPTS=" -u root -b 0.0.0.0:8080"
  • 启动服务
service ss5 start
  • 添加自启动
chkconfig --add ss5
chkconfig --level 345 ss5 on
chkconfig --list | grep ss5

在 Mac OS X 上安装 TensorFlow

使用 virtualenv 安装

按照以下步骤安装 TensorFlow:

  1. 打开终端(一个 shell),你将在这个终端中执行随后的步骤
  2. 通过以下命令安装 pip 和 virtualenv:$ sudo easy_install pip $ sudo pip install --upgrade virtualenv
  3. 执行以下任一命令创建虚拟环境: $ virtualenv --system-site-packages targetDirectory # for Python 2.7 $ virtualenv --system-site-packages -p python3 targetDirectory # for Python 3.ntargetDirectory 因虚拟环境根路径而异,我们的命令假使 targetDirectory 是 ~/tensorflow,但你可以选择任一目录。
  4. 执行任一命令激活虚拟环境:$ source ~/tensorflow/bin/activate # If using bash, sh, ksh, or zsh $ source ~/tensorflow/bin/activate.csh # If using csh or tcsh 上面的 source 命令应该将提示符改成了下面这样:(tensorflow)$
  5. 如果已经安装了 pip 8.1 或者更新的版本,执行以下任一命令在激活的虚拟环境中安装 TensorFlow 及其所有依赖: $ pip install --upgrade tensorflow # for Python 2.7 $ pip3 install --upgrade tensorflow # for Python 3.n如果前面的命令执行成功了,跳过步骤 6;如果失败了,再执行步骤 6。
  6. 可选,如果步骤 5 失败了(一般是因为你使用了低于 8.1 版本的 pip),执行以下任一命令在激活的虚拟环境中安装 TensorFlow: $ pip install --upgrade tfBinaryURL # Python 2.7 $ pip3 install --upgrade tfBinaryURL # Python 3.n tfBinaryURL 是 Tensorflow 包的 URL,准确的 tfBinaryURL 值因操作系统和 Python 版本而异,在这里找到和你系统相关的 tfBinaryURL 值。例如,你要在 Mac OS X 上安装 Python 2.7 对应的 Tensorflow 版本,在虚拟环境中安装 Tensorflow 就执行下面的命令:$ pip3 install --upgrade \ https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

如果安装过程中遇到麻烦,参考常见安装问题

下一步

安装完成后,验证你的安装是否工作正常。

注意,每打开一个新的 shell 使用 TensorFlow 都必须激活虚拟环境。如果当前虚拟环境没有被激活(也就是提示符不是 tensorflow),执行以下任一命令:

$ source ~/tensorflow/bin/activate      # bash, sh, ksh, or zsh
$ source ~/tensorflow/bin/activate.csh  # csh or tcsh 

你的提示符变成下面这样说明 tensorflow 环境已经激活:

(tensorflow)$ 

当虚拟环境激活后,你可以在这个 shell 中运行 TensorFlow 程序。如果你不再使用 TensorFlow,可以通过下面命令退出环境:

(tensorflow)$ deactivate 

提示符将会恢复到默认的(在 PS1 中定义的)。

卸载 TensorFlow

如果你想卸载 TensorFlow,简单地移除你创建的目录。例如:

 $ rm -r ~/tensorflow 

使用本地 pip 安装

我们已经将 TensorFlow 二进制文件上传到了 PyPI,因此你可以通过 pip 安装, REQUIRED_PACKAGES section of setup.py 文件列出了 pip 将要安装或升级的包。

必备: Python

要安装 TensorFlow,你的系统必须依据安装了以下任一 Python 版本:

  • Python 2.7
  • Python 3.3+

如果你的系统还没有安装符合以上版本的 Python,现在安装

安装 Python,你可能需要禁用系统完整性保护(SIP)来获得从 Mac App Store 外安装软件的许可。

必备: pip

Pip 安装和管理 Python写的软件包,如果你要使用本地 pip 安装,系统上必须安装下面的任一 pip 版本:

  • pip, for Python 2.7
  • pip3, for Python 3.n.

pip 或者 pip3 可能在你安装 Python 的时候已经安装了,执行以下任一命令确认系统上是否安装了 pip 或 pip3:

$ pip -V  # for Python 2.7
$ pip3 -V # for Python 3.n 

我们强烈建议使用 pip 或者 pip3 为 8.1 或者更新的版本安装 TensorFlow,如果没有安装,执行以下任一命令安装或更新:

$ sudo easy_install --upgrade pip
$ sudo easy_install --upgrade six 

安装 TensorFlow

假设你的 Mac 上已经装好了必备的程序,按照以下步骤执行:

  1. 执行以下任一命令安装 TensorFlow: $ pip install tensorflow # Python 2.7; CPU support $ pip3 install tensorflow # Python 3.n; CPU support如果上面的命令执行完成,现在可以验证你的安装了。
  2. (可选的) 如果步骤 1 失败了,执行下面的命令安装最新版本 TensorFlow: $ sudo pip install --upgrade tfBinaryURL # Python 2.7 $ sudo pip3 install --upgrade tfBinaryURL # Python 3.n tfBinaryURL 是 Tensorflow 包的 URL,准确的 tfBinaryURL 值因操作系统和 Python 版本而异,在这里找到和你系统相关的 tfBinaryURL 值。例如,你要在 Mac OS X 上安装 Python 2.7 对应的 Tensorflow 版本,在虚拟环境中安装 Tensorflow 就执行下面的命令: $ sudo pip3 install --upgrade \ https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl 如果以上命令运行失败,参考 安装问题

下一步

安装完成后,验证你的安装是否工作正常。

卸载 TensorFlow

如果要卸载 TensorFlow,执行下面的命令:

$ pip uninstall tensorflow
$ pip3 uninstall tensorflow 

使用 Docker 安装

按照以下步骤使用 Docker 安装 TensorFlow:

  1. 按照 文档 在你的机器上安装 Docker
  2. 启动任一个包含 TensorFlow 镜像的 Docker 容器

本节剩下部分解释如何启动 Docker 容器。

要启动包含 TensorFlow 镜像的 Docker 容器,执行以下命令:

 $ docker run -it -p hostPort:containerPort TensorFlowImage 

where:

  • -p hostPort:containerPort 是可选的,如果你想从 shell 运行 TensorFlow 程序忽略这个选项。如果你想从 Jupyter notebook 运行 TensorFlow 程序,hostPort 和 containerPort 都设置为 8888。如果你想在镜像中运行 TensorBoard,再添加一个-p 参数,hostPort 和 containerPort 都设置为 6006。
  • TensorFlowImage 是需要的,它用于指定 Docker 容器,你必须指定接下来的任一一个:gcr.io/tensorflow/tensorflow: TensorFlow 二进制镜像,gcr.io/tensorflow/tensorflow:latest-devel: TensorFlow 二进制镜像加源码。

gcr.io 是 Goole 的容器注册表(?),注意部分 TensorFlow 也可以从 dockerhub 获取。

例如,下面的命令可以在 Docker 容器中启动一个 TensorFlow CPU 镜像,然后你可以在镜像的 shell 中运行 TensorFlow 程序:

$ docker run -it gcr.io/tensorflow/tensorflow bash

以下命令也可以在 Docker 容器中启动一个 TensorFlow CPU 镜像,然而,在这个 Docker 镜像中,你可以在 Jupyter notebook 中运行 TensorFlow 程序:

$ docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow

Docker 将会先下载 TensorFlow 镜像然后启动它。

下一步

现在可以验证你的安装了。

使用 Anaconda 安装

Anaconda 安装只是社区而非官方支持

按照以下步骤在 Anaconda 环境中安装 TensorFlow:

  1. 按照 Anaconda 下载站点 说明下载安装 Anaconda
  2. 执行以下命令创建名为 tensorflow 的 conda 环境:$ conda create -n tensorflow
  3. 执行以下命令激活 conda 环境:$ source activate tensorflow (tensorflow)$ # Your prompt should change
  4. 执行以下命令在你的 conda 环境中安装 TensorFlow:(tensorflow)$ pip install --ignore-installed --upgrade TF_PYTHON_URLTF_PYTHON_URL 是 TensorFlow Python 包 的 URL,例如,以下命令是安装 Python 2.7 CPU-only 版本的 TensorFlow: (tensorflow)$ pip install --ignore-installed --upgrade \ https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

验证你的安装

要验证你的 TensorFlow 安装,操作以下步骤:

  1. 保证你的环境可以运行 TensorFlow 程序
  2. 运行一个小的 TensorFlow 程序

准备你的环境

如果你使用本地 pip, virtualenv 或者 Anaconda 安装,操作以下步骤:

  1. 打开一个终端
  2. 如果你使用 virtualenv 或 Anaconda 安装,激活你的容器
  3. 如果你安装了 TensorFlow 源码,进到任何一个处了包含 TensorFlow 源码的目录

如果通过 Docker 安装,启动一个运行 bash 的 Docker 容器,例如:

$ docker run -it gcr.io/tensorflow/tensorflow bash

运行一个小的 TensorFlow 程序

在一个 shell 中执行 Python:

$ python

在 python 交互式 shell 中输入以下小程序:

# Python

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

如果系统输出以下内容,你可以开始写 TensorFlow 程序了:

Hello, TensorFlow!

如果你不熟悉 TensorFlow,参考 Getting Started with TensorFlow

如果系统输出错误信息而不是欢迎语,参考 常见安装问题

常见安装问题

我们依据 Stack Overflow 记录 TensorFlow 安装问题和相应的解决方法。下面的表格包括 Stack Overflow 常见的安装问题回复链接,如果你遇到的错误信息或者其它安装问题不在表格中,请在 Stack Overflow 上搜索。如果 Stack Overflow 上没有你搜索的错误信息,提一个新问题并且打上 tensorflow 标签。

Stack Overflow LinkError Message
42006320ImportError: Traceback (most recent call last):File ".../tensorflow/core/framework/graph_pb2.py", line 6, in from google.protobuf import descriptor as _descriptorImportError: cannot import name 'descriptor'
33623453IOError: [Errno 2] No such file or directory: '/tmp/pip-o6Tpui-build/setup.py'
35190574SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
42009190Installing collected packages: setuptools, protobuf, wheel, numpy, tensorflow Found existing installation: setuptools 1.1.6 Uninstalling setuptools-1.1.6: Exception: ... [Errno 1] Operation not permitted: '/tmp/pip-a1DXRT-uninstall/.../lib/python/_markerlib'
33622019ImportError: No module named copyreg
37810228During a pip install operation, the system returns:OSError: [Errno 1] Operation not permitted
33622842An import tensorflow statement triggers an error such as the following:Traceback (most recent call last): File "", line 1, in File "/usr/local/lib/python2.7/site-packages/tensorflow/__init__.py", line 4, in from tensorflow.python import * ... File "/usr/local/lib/python2.7/site-packages/tensorflow/core/framework/tensor_shape_pb2.py", line 22, in serialized_pb=_b('\n,tensorflow/core/framework/tensor_shape.proto\x12\ntensorflow\"d\n\x10TensorShapeProto\x12-\n\x03\x64im\x18\x02 \x03(\x0b\x32 .tensorflow.TensorShapeProto.Dim\x1a!\n\x03\x44im\x12\x0c\n\x04size\x18\x01 \x01(\x03\x12\x0c\n\x04name\x18\x02 \x01(\tb\x06proto3') TypeError: __init__() got an unexpected keyword argument 'syntax'
42075397pip install command triggers the following error:...You have not agreed to the Xcode license agreements, please run'xcodebuild -license' (for user-level acceptance) or'sudo xcodebuild -license' (for system-wide acceptance) from within aTerminal window to review and agree to the Xcode license agreements.... File "numpy/core/setup.py", line 653, in get_mathlib_info raise RuntimeError("Broken toolchain: cannot link a simple C program")RuntimeError: Broken toolchain: cannot link a simple C program

TensorFlow Python 包 URL

一些安装方法需要 TensorFlow Python 包的 URL,值与三个方面有关(?):

  • 操作系统
  • Python 版本

本节记录了 Mac OS 安装相关的值

Python 2.7

https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

Python 3.4, 3.5, or 3.6

https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py3-none-any.whl

Protobuf pip package 3.1

如果你没有遇到 protobuf pip 包相关的问题可以跳过本节。

注意:如果你的 TensorFlow 运行很慢,可能是和 protobuf pip 包有关的问题。

TensorFlow pip 包依赖 protobuf pip 3.1 版本的包,从 PyPI 下载的 protobuf pip 包(在调用 pip install protobuf 时)是一个仅包含 Python 的库,其中包含执行速度比 C++ 实现慢10 ~ 50 倍的原始序列化/反序列化的Python 实现。 Protobuf 还支持包含基于快速 C++ 的原语解析的 Python 包的二进制扩展,此扩展在标准的仅Python 专用 pip 包中不可用,我们为 protobuf 创建了一个包含二进制扩展名的自定义二进制 pip 包。要安装自定义二进制 protobuf pip 包,请调用以下命令之一:

  • for Python 2.7:$ pip install --upgrade \ https://storage.googleapis.com/tensorflow/mac/cpu/protobuf-3.1.0-cp27-none-macosx_10_11_x86_64.whl
  • for Python 3.n:$ pip3 install --upgrade \ https://storage.googleapis.com/tensorflow/mac/cpu/protobuf-3.1.0-cp35-none-macosx_10_11_x86_64.whl

安装这些 protobuf 包将会覆盖已安装的包,注意二进制 pip 包已经支持大于 64M 的 protobufs,修复了如下报错:

[libprotobuf ERROR google/protobuf/src/google/protobuf/io/coded_stream.cc:207]
A protocol message was rejected because it was too big (more than 67108864 bytes).
To increase the limit (or to disable these warnings), see
CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.

扫描工具-Arachni

./arachni_console          #进入命令行模式

./arachni_web               #启用web服务,进入web操作模式 【属于web 应用】

http://localhost:9292/     

· admin@admin.admin / administrator     #web界面的登录账号密

Remote 设置扫描探针

./arachni_rpcd –address=127.0.0.1 –port=1111 –nickname=test1  

docker pull arachni/arachni

docker -d -p9292:9292 run arachni/arachni

TensorFlow简介与环境搭建

TersorFlow是一个用于人工智能的开源神器

安装所需必须工具

#在linux ubuntu上:

$ sudo apt-get install python-pip python-dev python-virtualenv

其中python-virtualenv为虚拟环境

#在Mac上:

$ sudo pip install –upgrade virtualenv

建立新的虚拟python环境,将环境建立在~/temsorflow目录下,执行:

$ virtualenv –system-site-packages ~/temsorflow

$ cd ~/temsorflow

激活virtualenv:

$ source bin/activate #激活

(tensorflow)$ #终端提示符发生变化,变成这样

在virtualenv内,安装TensorFlow:

(tensorflow)$ pip install -U TensorFlow

当使用完TensorFlow,停用virtualenv

(tensorflow)$ deactivate #停用

CentOS7使用firewall-cmd打开关闭防火墙与端口

CentOS7使用firewall-cmd打开关闭防火墙与端口
2018年07月10日 00:32:47 朽木o0 阅读数:8133
一、centos7版本对防火墙进行加强,不再使用原来的iptables,启用firewalld
1.firewalld的基本使用
启动: systemctl start firewalld
查状态:systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl –failed
2.配置firewalld-cmd
查看版本: firewall-cmd –version
查看帮助: firewall-cmd –help
显示状态: firewall-cmd –state
查看所有打开的端口: firewall-cmd –zone=public –list-ports
更新防火墙规则: firewall-cmd –reload
查看区域信息: firewall-cmd –get-active-zones
查看指定接口所属区域: firewall-cmd –get-zone-of-interface=eth0
拒绝所有包:firewall-cmd –panic-on
取消拒绝状态: firewall-cmd –panic-off
查看是否拒绝: firewall-cmd –query-panic
3.那怎么开启一个端口呢
添加
firewall-cmd –zone=public(作用域) –add-port=80/tcp(端口和访问类型) –permanent(永久生效)
firewall-cmd –zone=public –add-service=http –permanent
firewall-cmd –reload # 重新载入,更新防火墙规则
firewall-cmd –zone= public –query-port=80/tcp #查看
firewall-cmd –zone= public –remove-port=80/tcp –permanent # 删除

firewall-cmd –list-services
firewall-cmd –get-services
firewall-cmd –add-service=
firewall-cmd –delete-service=
在每次修改端口和服务后/etc/firewalld/zones/public.xml文件就会被修改,所以也可以在文件中之间修改,然后重新加载
使用命令实际也是在修改文件,需要重新加载才能生效。

firewall-cmd –zone=public –query-port=80/tcp
firewall-cmd –zone=public –query-port=8080/tcp
firewall-cmd –zone=public –query-port=3306/tcp
firewall-cmd –zone=public –add-port=8080/tcp –permanent
firewall-cmd –zone=public –add-port=3306/tcp –permanent
firewall-cmd –zone=public –query-port=3306/tcp
firewall-cmd –zone=public –query-port=8080/tcp
firewall-cmd –reload # 重新加载后才能生效
firewall-cmd –zone=public –query-port=3306/tcp
firewall-cmd –zone=public –query-port=8080/tcp
4.参数解释
–add-service #添加的服务
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
5.详细使用
firewall-cmd –permanent –zone=public –add-rich-rule=’rule family=”ipv4″ source address=”192.168.0.4/24″ service name=”http” accept’ //设置某个ip访问某个服务
firewall-cmd –permanent –zone=public –remove-rich-rule=’rule family=”ipv4″ source address=”192.168.0.4/24″ service name=”http” accept’ //删除配置
firewall-cmd –permanent –add-rich-rule ‘rule family=ipv4 source address=192.168.0.1/2 port port=80 protocol=tcp accept’ //设置某个ip访问某个端口
firewall-cmd –permanent –remove-rich-rule ‘rule family=ipv4 source address=192.168.0.1/2 port port=80 protocol=tcp accept’ //删除配置

firewall-cmd –query-masquerade # 检查是否允许伪装IP
firewall-cmd –add-masquerade # 允许防火墙伪装IP
firewall-cmd –remove-masquerade # 禁止防火墙伪装IP

firewall-cmd –add-forward-port=port=80:proto=tcp:toport=8080 # 将80端口的流量转发至8080
firewall-cmd –add-forward-port=proto=80:proto=tcp:toaddr=192.168.1.0.1 # 将80端口的流量转发至192.168.0.1
firewall-cmd –add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080 # 将80端口的流量转发至192.168.0.1的8080端口
二、centos7以下版本
1.开放80,22,8080 端口
/sbin/iptables -I INPUT -p tcp –dport 80 -j ACCEPT
/sbin/iptables -I INPUT -p tcp –dport 22 -j ACCEPT
/sbin/iptables -I INPUT -p tcp –dport 8080 -j ACCEPT
2.保存
/etc/rc.d/init.d/iptables save
3.查看打开的端口
/etc/init.d/iptables status
4.关闭防火墙
1) 永久性生效,重启后不会复原
开启: chkconfig iptables on
关闭: chkconfig iptables off
2) 即时生效,重启后复原
开启: service iptables start
关闭: service iptables stop