mdaxfr

- Mass DNS AXFR
git clone git://git.acid.vegas/mdaxfr.git
Log | Files | Refs | Archive | README | LICENSE

daily-axfr.yml (1458B)

      1 name: Daily AXFR Scan
      2 
      3 on:
      4   schedule:
      5     # Run at midnight UTC daily
      6     - cron: '0 0 * * *'
      7   # Optional: Allow manual triggering
      8   workflow_dispatch:
      9 
     10 jobs:
     11   scan:
     12     runs-on: ubuntu-latest
     13     
     14     steps:
     15       - name: Checkout repository
     16         uses: actions/checkout@v4
     17         with:
     18           # Full git history needed to track changes
     19           fetch-depth: 0
     20 
     21       - name: Set up Python
     22         uses: actions/setup-python@v4
     23         with:
     24           python-version: '3.x'
     25 
     26       - name: Install dependencies
     27         run: |
     28           python -m pip install --upgrade pip
     29           pip install dnspython
     30 
     31       - name: Create directories
     32         run: |
     33           mkdir -p axfrout/root
     34           chmod +x ./extras/mdaxfr.py
     35 
     36       - name: Run AXFR scan with TLDs
     37         run: |
     38           python ./extras/mdaxfr.py --tlds -c 10
     39 
     40       - name: Configure Git
     41         run: |
     42           git config --local user.email "github-actions[bot]@users.noreply.github.com"
     43           git config --local user.name "github-actions[bot]"
     44 
     45       - name: Commit and push changes
     46         run: |
     47           # Stage only the axfrout directory (which includes root/)
     48           git add axfrout/
     49           
     50           # Only commit if there are changes
     51           if git diff --staged --quiet; then
     52             echo "No changes to commit"
     53             exit 0
     54           fi
     55           
     56           git commit -m "Auto: Daily AXFR scan results $(date -u '+%Y-%m-%d')"
     57           git push