OpenTaxii+mysql+nginx 配置教程

# OpenTaxii配置教程

## 安装过程中注意点

- 官方给出的service.yml配置文件中默认使用https作为请求方式,所以如果不能提供https服务的话,请注释掉

- opentaxii默认安装是0.1.9,但是0.1.9有个关于格式的问题,所以,如果实际环境中发现无法push 和pull 数据,请使用0.1.8版本

- 经测试,opentaxii+mysql 不如 opentaxii+sqllite的性能,很是奇怪。所以实际使用过程中可以都测试看看。

## 环境需求:

python版本:2.7,3.4

pip:python包管理工具

mysql: 无版本需求

nginx: 无版本需求

## 安装步骤:

1. pip install taxii gunicorn

2. 创建mysql数据库:taxii_data,taxii_auth

3. 修改配置文件taxii.yml文件,9行和15行里的mysql连接信息配置

4. 修改配置文件taxii.yml第一行域名为实际的域名

5. 运行命令export OPENTAXII_CONFIG=taxii.yml文件的路径

6. 根据实际的情况,修改service.yml和collections.yml

7. 创建服务:opentaxii-create-services -c services.yml

8. 创建集合:opentaxii-create-collections -c collections.yml

9. 添加一个用户名密码:opentaxii-create-account -u username -p password

10. 运行opentaxii(注意修改日志路径):gunicorn opentaxii.http:app --workers 2 --log-level debug --log-file /home/worker/log/opentaxii.log --timeout 30 --bind 0.0.0.0:19000 -D

## 测试安装是否成功

1. pip install cabby

2. taxii-discovery --path http://localhost:9000/services/discovery-a:discovery-a为service.xml里配置的discovery,没有输出错误信息,则成功

3. taxii-collections --path http://localhost:9000/services/collection-management-a:collection-management-a为service.xml里配置的collection_management,没有输出错误信息,则成功

## HTTPS配置

1. 准备好https证书

2. 生成dbparam:openssl dhparam -out dhparam.pem 2048

3. nginx 增加server配置如下(注意修改 cert.pem,cert.key,ssl_dhparam,access_log,error_log配置项的文件路径):

server {

listen 443 ssl;

server_name taxii.example.com;

ssl_certificate      /usr/local/nginx/ssl/cert.pem;

ssl_certificate_key  /usr/local/nginx/ssl/cert.key;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";

ssl_prefer_server_ciphers on;

ssl_session_cache shared:SSL:10m;

access_log  /var/log/nginx/taxii_access.log;

error_log  /var/log/nginx/taxii_error.log;

location / {

proxy_pass http://127.0.0.1:19000;

proxy_set_header Host $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

4. 重启nginx

## [转载自我的博客](http://www.bugcode.cn/opentaxii-install-nginx-mysql.html)

你可能感兴趣的:(OpenTaxii+mysql+nginx 配置教程)