Hpdoger's Blog.

Ubuntu16.04-子域名监控工具Getdomain环境搭建

Word count: 788 / Reading time: 4 min
2019/03/30 Share

Ubuntu16.04-子域名监控Get_domain环境搭建

操作环境:Ubuntu16.04
数据库:Mongdb
项目地址:https://github.com/guimaizi/get_domain

各种依赖安装

1
2
3
sudo apt-get install git python3 python3-pip xvfb unzip libxss1 libappindicator1 libindicator7 -y

sudo pip3 install selenium pymongo

安装mongodb服务端

  1. 添加mongodb签名到APT

    1
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
  2. 创建/etc/apt/sources.list.d/mongodb-org-3.2.list文件并写入命令

    1
    echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
  3. 更新软件源列表

    1
    sudo apt-get update
  4. 安装mongodb(默认是安装稳定版)

    1
    sudo apt-get install -y mongodb-org

配置mongodb服务端

  1. 修改配置文件/etc/mongodb.conf
    1
    2
    3
    4
    修改后的内容如下:
    bind_ip = 0.0.0.0
    port = 27017
    auth=true (添加帐号,密码认证)

修改后重启mongodb:sudo service mongodb restart

  1. 添加超级用户

    1
    2
    3
    use admin
    db.createUser({user:'admin',pwd:'123456aaa1xsda1A',roles:[{role:'userAdminAnyDatabase',db:'admin'}]})
    db.auth('admin','123456aaa1xsda1A')
  2. 添加扫描器用户

    1
    2
    3
    use target_domain
    db.createUser({user:'target',pwd:'123456aaaxsda1A',roles:[{role:'readWrite',db:'target_domain'}]})
    db.auth('target','123456aaaxsda1A')

安装chromedriver

先安装Chrome浏览器

1
2
3
4
sudo apt-get install libxss1 libappindicator1 libindicator7
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome*.deb
sudo apt-get install -f

再安装chromedriver

1
2
3
4
5
6
wget -N http://chromedriver.storage.googleapis.com/72.0.3626.7/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
chmod +x chromedriver
sudo mv -f chromedriver /usr/local/share/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver

安装go-lang

1
2
3
4
5
$ sudo apt-get update
$ sudo apt-get -y upgrade
$ wget https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz
$ sudo tar -xvf go1.7.linux-amd64.tar.gz
$ sudo mv go /usr/local

设置gopath

1
2
3
4
5
vim /etc/profile
export GOROOT=/usr/local/go #设置为go安装的路径,有些安装包会自动设置默认的goroot
export GOPATH=$HOME/gocode #默认安装包的路径
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source /etc/profile

go env看一下是否设置成功

设置Python默认为Python3

文章:https://blog.csdn.net/u011534057/article/details/51615193

使用文章的第二种方法:在系统级修改 Python 版本

下载subfinder

1
go get github.com/subfinder/subfinder

报错没关系,只要文件里有bin src就行

后续步骤

http://www.guimaizi.com/archives/360的启动说明

crontab定时执行任务:https://www.jianshu.com/p/838db0269fd0

crontab文件如下,每天12点执行:

1
2
# everday 12:00 am exec
0 0 17 * * ? python /home/get_domain/while_update.py

注意最后要留个空行

Mongodb操作

更新,否则无法进行对比,更新状态到0

1
db.getCollection('xxx').update({'state':1},{$set:{'state': NumberInt(0)}},{multi:true})

一直运行random_start

1
nohup python -u random_start.py > nohup.log 2>&1 &

记得修改random_start的代码为while 1
可以修改五次config,运行五个后台程序

各种报错解决

报错代码127

1
selenium.common.exceptions.WebDriverException: Message: Service chromedriver unexpectedly exited. Status code was: 127

原因是browser版本过低,跟driver不匹配,升级browser

1
apt-get install chromium-browser

权限报错

1
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormall

chromedriver在py程序里没权限,修改代码Browser.py

1
2
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')

相关链接

安装mongodb:https://www.jianshu.com/p/5598f1dcbb98

CATALOG
  1. 1. Ubuntu16.04-子域名监控Get_domain环境搭建
  2. 2. 各种依赖安装
  3. 3. 安装mongodb服务端
  4. 4. 配置mongodb服务端
  5. 5. 安装chromedriver
  6. 6. 安装go-lang
  7. 7. 设置Python默认为Python3
  8. 8. 下载subfinder
  9. 9. 后续步骤
  10. 10. Mongodb操作
  11. 11. 一直运行random_start
  12. 12. 各种报错解决
    1. 12.1. 报错代码127
    2. 12.2. 权限报错
  13. 13. 相关链接