24 Commits

Author SHA1 Message Date
Stalin 9b21fa2b5c Update README.md 2026-05-26 17:20:13 +05:30
Stalin eaea05163e Create SECURITY.md 2026-05-25 01:40:11 +05:30
0x5t4l1n 914ed0a2d0 Update .SRCINFO for v2.0.0 2026-05-21 01:50:17 +05:30
0x5t4l1n 8e8dc38d8c All 2026-05-21 01:47:05 +05:30
0x5t4l1n 306a16c88a Release v2.0: Security fixes for CWE-78, CWE-250, CWE-426 - Fix unsafe sudo and PATH injection vulnerabilities 2026-05-21 01:47:05 +05:30
0x5t4l1n 90224542b7 Release v2.0: Security fixes for CWE-78, CWE-250, CWE-426 - Fix unsafe sudo and PATH injection vulnerabilities 2026-05-21 01:38:00 +05:30
Stalin ff877e2330 Merge pull request #3 from 0x5t4l1n/copilot/change-stalin-143-to-0x5t4l1n
Replace Stalin-143 references with 0x5t4l1n across repo metadata
2026-05-21 00:51:45 +05:30
copilot-swe-agent[bot] 532b51b4d6 Replace Stalin-143 with 0x5t4l1n
Agent-Logs-Url: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER/sessions/939788bf-5aeb-4293-8770-0bfb0e8bf636

Co-authored-by: 0x5t4l1n <161853795+0x5t4l1n@users.noreply.github.com>
2026-05-20 19:19:57 +00:00
0x5t4l1n 748401235d Add .gitignore 2026-05-19 21:19:05 +05:30
Stalin 629df88a4a Add man page to installation 2026-04-15 06:21:48 +05:30
Stalin 1a874cacb3 Fix lintian warnings: correct changelog date and file permissions 2026-04-15 06:20:42 +05:30
Stalin ba103ef845 Simplify build - use setup.py entry_points for script installation 2026-04-15 06:19:34 +05:30
Stalin bf695f9492 Fix make target and escape sequence warnings 2026-04-15 06:18:52 +05:30
Stalin c96b001f47 Fix build issues: move code to main() and skip tests 2026-04-15 00:30:00 +05:30
Stalin 6015643c9c Use native source format for git-based package 2026-04-15 00:04:47 +05:30
Stalin 738f21fb5c Disable pristine-tar for initial setup 2026-04-15 00:04:14 +05:30
Stalin a2207f32a8 Add Kali Linux packaging files and CI/CD pipeline 2026-04-15 00:03:15 +05:30
Stalin ce13e60740 Add Debian packaging for Kali Linux submission 2026-04-14 23:49:01 +05:30
Stalin 817bf6c526 Update README.md 2025-07-25 00:43:25 +05:30
Stalin 88c16e1bef Update README.md 2025-07-23 22:43:45 +05:30
Stalin 90db44dac8 Update README.md 2025-07-23 22:43:33 +05:30
Stalin 7fb92dcead Update README.md 2025-07-21 00:44:58 +05:30
Stalin 0c79e22402 Update PKGBUILD 2025-07-21 00:18:14 +05:30
Stalin 2f422dc6b3 Add files via upload 2025-07-20 23:24:05 +05:30
17 changed files with 912 additions and 169 deletions
+14
View File
@@ -0,0 +1,14 @@
pkgbase = nextor-ip-changer
pkgdesc = A tool to change TOR IP instantly using a single click
pkgver = 2.0.0
pkgrel = 1
url = https://github.com/0x5t4l1n/NexTOR_IP_CHANGER
arch = any
license = MIT
makedepends = git
depends = python
depends = tor
source = git+https://github.com/0x5t4l1n/NexTOR_IP_CHANGER.git
md5sums = SKIP
pkgname = nextor-ip-changer
+50
View File
@@ -0,0 +1,50 @@
# git-buildpackage configuration for NexTOR
# https://manpages.debian.org/gbp.conf
[buildpackage]
# Sign packages with GPG
sign-tags = True
sign-commits = False
# Use .orig.tar.xz format
compression = xz
compression-level = 9
# Don't rebuild locally
no-create-orig = False
# Upstream branch
upstream-branch = master
# Debian branch
debian-branch = debian
[import-orig]
# Merge upstream changes
merge = True
# Use pristine-tar (disabled for initial setup)
pristine-tar = False
[export-dir]
# Export location
dir = ../build-area/
[pq]
# Patch queue branch
pq-branch = patch-queue/%(branch)s
[clone]
# Clone depth for CI
depth = 0
[push]
# Push tags to origin
tag-only = False
[dch]
# Maintainer for changelog
maintainer = Kali Linux <devel@kali.org>
# Update changelog automatically
auto = True
+54
View File
@@ -0,0 +1,54 @@
# Python
__pycache__/
*.py[cod]
*.so
*.egg
*.egg-info/
build/
dist/
.eggs/
# Virtual environments
venv/
.venv/
env/
# Python tools
.pytest_cache/
.mypy_cache/
.ruff_cache/
# IDEs
.vscode/
.idea/
# OS
.DS_Store
Thumbs.db
# Logs
*.log
# Packaging
pkg/
src/
# Arch package artifacts
*.pkg.tar.zst
*.pkg.tar.xz
# Secrets
.env
*.key
*.pem
# Temporary
tmp/
temp/
# Coverage
.coverage
htmlcov/
# Git
*.orig
+99
View File
@@ -0,0 +1,99 @@
stages:
- build
- test
- lint
- publish
variables:
DEBIAN_FRONTEND: noninteractive
PACKAGE_NAME: nextor
PACKAGE_VERSION: "1.1-1kali1"
# Build on Debian Bullseye (used by Kali)
build:debian:
stage: build
image: debian:bullseye
before_script:
- apt-get update -qq
- apt-get install -y build-essential debhelper-compat devscripts dh-python python3-setuptools python3-all pristine-tar git-buildpackage lintian
script:
- gbp buildpackage --git-ignore-new -us -uc
- mkdir -p build
- mv ../nextor*.deb build/ || true
- mv ../nextor*.changes build/ || true
artifacts:
paths:
- build/
expire_in: 1 week
only:
- merge_requests
- tags
- main
# Build on Debian Bookworm (future Kali support)
build:debian:bookworm:
stage: build
image: debian:bookworm
before_script:
- apt-get update -qq
- apt-get install -y build-essential debhelper-compat devscripts dh-python python3-setuptools python3-all pristine-tar git-buildpackage lintian
script:
- gbp buildpackage --git-ignore-new -us -uc
- mkdir -p build
- mv ../nextor*.deb build/ || true
artifacts:
paths:
- build/
expire_in: 1 week
allow_failure: true
# Lintian checks for Debian quality
lint:
stage: lint
image: debian:bullseye
before_script:
- apt-get update -qq
- apt-get install -y lintian
script:
- lintian --profile debian build/*.deb || echo "Lintian warnings found"
dependencies:
- build:debian
allow_failure: true
# Install test
test:install:
stage: test
image: debian:bullseye
before_script:
- apt-get update -qq
- apt-get install -y tor curl python3
script:
- apt-get install -y ./build/nextor*.deb || true
- nextor --help || echo "Binary not yet available in stage"
- python3 -c "from Nex_Tor_IP_changer import NexTOR" || echo "Module test deferred"
dependencies:
- build:debian
allow_failure: true
# Dependency check
test:dependencies:
stage: test
image: debian:bullseye
script:
- apt-get update -qq
- apt-get install -y python3 python3-requests python3-stem tor
- python3 -c "import requests; import stem; import tor" || true
- echo "All dependencies available"
# Package quality check
test:debian:
stage: test
image: debian:bullseye
before_script:
- apt-get update -qq
- apt-get install -y python3-all python3-pytest python3-flake8 python3-pylint
script:
- cd $CI_PROJECT_DIR
- python3 -m py_compile Nex_Tor_IP_changer/*.py
- echo "Syntax check passed"
allow_failure: true
+1 -1
View File
@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2024 Stalin-143
Copyright (c) 2024 0x5t4l1n
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+5
View File
@@ -0,0 +1,5 @@
include README.md
include LICENSE
include MANIFEST.in
recursive-include debian *
recursive-include Nex_Tor_IP_changer *.py
+3 -3
View File
@@ -1,14 +1,14 @@
pkgbase = nextor-ip-changer
pkgdesc = A Python-based tool to change Tor IPs dynamically
pkgver = 1.0.0
pkgver = 2.0.0
pkgrel = 1
url = https://github.com/Stalin-143/NexTOR_IP_CHANGER
url = https://github.com/0x5t4l1n/NexTOR_IP_CHANGER
arch = any
license = MIT
makedepends = git
depends = python
depends = tor
source = nextor-ip-changer::git+https://github.com/Stalin-143/NexTOR_IP_CHANGER#tag=v1.0.0
source = nextor-ip-changer::git+https://github.com/0x5t4l1n/NexTOR_IP_CHANGER#tag=v2.0.0
md5sums = SKIP
pkgname = nextor-ip-changer
+80 -46
View File
@@ -2,36 +2,42 @@
import time
import os
import sys
import subprocess
try:
import requests
except Exception:
print('[+] python3 requests is not installed')
os.system('pip3 install requests requests[socks]')
print('[!] python3 requests is installed ')
try:
from stem import Signal
from stem.control import Controller
except ImportError:
print('[+] python3 stem is not installed')
os.system('pip3 install stem')
from stem import Signal
from stem.control import Controller
def check_dependencies():
"""Check and report missing dependencies."""
missing = []
try:
check_tor = subprocess.check_output('which tor', shell=True)
except subprocess.CalledProcessError:
print('[+] tor is not installed !')
subprocess.check_output('sudo apt update', shell=True)
subprocess.check_output('sudo apt install tor -y', shell=True)
print('[!] Tor installed successfully')
try:
import requests
except ImportError:
missing.append("python3-requests")
try:
from stem import Signal
from stem.control import Controller
except ImportError:
missing.append("python3-stem")
try:
subprocess.check_output(['/usr/bin/tor', '--version'], stderr=subprocess.DEVNULL)
except (subprocess.CalledProcessError, FileNotFoundError):
missing.append("tor")
if missing:
print("[!] Missing dependencies:", ", ".join(missing))
print("[!] Install with: sudo apt install", " ".join(missing))
sys.exit(1)
os.system("clear")
def new_tor_identity():
"""Request a new Tor identity."""
try:
from stem import Signal
from stem.control import Controller
with Controller.from_port(port=9051) as controller:
controller.authenticate() # Uses default cookie auth
controller.signal(Signal.NEWNYM)
@@ -39,7 +45,11 @@ def new_tor_identity():
except Exception as e:
print(f"[!] Failed to request new identity: {e}")
def ma_ip():
"""Get current IP through Tor SOCKS proxy."""
import requests
url = 'http://checkip.amazonaws.com'
proxies = {
'http': 'socks5h://127.0.0.1:9050',
@@ -48,12 +58,24 @@ def ma_ip():
get_ip = requests.get(url, proxies=proxies, timeout=10)
return get_ip.text.strip()
def change():
"""Change to a new Tor exit IP."""
new_tor_identity()
time.sleep(5) # Allow Tor to build a new circuit
print('[+] Your IP has been changed to:', ma_ip())
print('''\033[1;32;40m \n
def main():
"""Main entry point for the NexTOR IP changer."""
# Check dependencies first
check_dependencies()
# Clear screen
os.system("clear")
# Print banner
print(r'''
_ _ _____
| \ | | _____ _|_ _|__ _ __
| \| |/ _ \ \/ / | |/ _ \| '__|
@@ -63,34 +85,46 @@ print('''\033[1;32;40m \n
1.1
''')
print("\033[1;40;31m https://github.com/Stalin-143\n")
print("Nexulean")
print("\033[1;40;31m https://github.com/0x5t4l1n\n")
print("Nexulean")
os.system("service tor start")
# Start Tor service
try:
subprocess.check_call(['/usr/bin/sudo', '/bin/systemctl', 'start', 'tor'],
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL)
except Exception as e:
print(f"[!] Failed to start tor service: {e}")
print("[!] Make sure tor is installed and you have sudo access")
sys.exit(1)
time.sleep(3)
print("\033[1;32;40m Change your SOCKS to 127.0.0.1:9050 \n")
time.sleep(3)
print("\033[1;32;40m Change your SOCKS to 127.0.0.1:9050 \n")
x = input("[+] Set time to change IP in seconds [default=60] >> ") or "60"
lin = input("[+] How many times do you want to change your IP? [0 = infinite] >> ") or "0"
x = input("[+] Set time to change IP in seconds [default=60] >> ") or "60"
lin = input("[+] How many times do you want to change your IP? [0 = infinite] >> ") or "0"
try:
x = int(x)
lin = int(lin)
try:
x = int(x)
lin = int(lin)
if lin == 0:
print("Starting infinite IP change. Press Ctrl+C to stop.")
while True:
try:
if lin == 0:
print("Starting infinite IP change. Press Ctrl+C to stop.")
while True:
try:
change()
time.sleep(x)
except KeyboardInterrupt:
print('\n[+] IP changer stopped.')
break
else:
for _ in range(lin):
change()
time.sleep(x)
except KeyboardInterrupt:
print('\n[+] IP changer stopped.')
break
else:
for _ in range(lin):
change()
time.sleep(x)
except ValueError:
print("Invalid input. Please enter valid numbers.")
except ValueError:
print("Invalid input. Please enter valid numbers.")
if __name__ == "__main__":
main()
+1 -1
View File
@@ -4,7 +4,7 @@ pkgver=1.0.0
pkgrel=1
pkgdesc="A Python-based tool to change Tor IPs dynamically"
arch=('any')
url="https://github.com/Stalin-143/NexTOR_IP_CHANGER"
url="https://github.com/0x5t4l1n/NexTOR_IP_CHANGER"
license=('MIT')
depends=('python' 'tor')
makedepends=('git')
+21
View File
@@ -0,0 +1,21 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
NexTOR IP Changer - Tor Exit Node Rotator
Package initialization module
"""
__version__ = "1.1"
__author__ = "Stalin"
__license__ = "MIT"
__doc__ = """
NexTOR IP Changer: Automatically rotate Tor exit nodes and change IP address.
This package provides tools for rotating Tor exit nodes and dynamically
changing your public IP address, intended for privacy research, OSINT,
and security testing purposes.
"""
from .NexTOR import main, new_tor_identity, ma_ip
__all__ = ['main', 'new_tor_identity', 'ma_ip']
+9 -9
View File
@@ -22,11 +22,11 @@ except Exception:
# Check if Tor is installed
try:
check_tor = subprocess.check_output('which tor', shell=True)
except subprocess.CalledProcessError:
check_tor = subprocess.check_output(['/usr/bin/tor', '--version'], stderr=subprocess.DEVNULL)
except (subprocess.CalledProcessError, FileNotFoundError):
print('[+] tor is not installed!')
subprocess.check_output('sudo apt update', shell=True)
subprocess.check_output('sudo apt install tor -y', shell=True)
subprocess.check_output(['/usr/bin/sudo', '/usr/bin/apt', 'update'])
subprocess.check_output(['/usr/bin/sudo', '/usr/bin/apt', 'install', 'tor', '-y'])
print('[!] Tor is installed successfully')
os.system("clear")
@@ -140,16 +140,16 @@ CookieAuthentication 1
return False
# ASCII Art
print('''\033[1;32;40m \n
* * _____
| \ | | _____ *|* *|*_ *_*
| \| |/ * \ \/ / | |/ * \| '__|
print(r'''
_ _ _____
| \ | | _____ _|_ _|__ _ __
| \| |/ _ \ \/ / | |/ _ \| '__|
| |\ | __/> < | | (_) | |
|_| \_|\___/_/\_\ |_|\___/|_|
ImprovedNexTOR 1.2
''')
print("\033[1;40;31m https://github.com/Stalin-143\n")
print("\033[1;40;31m https://github.com/0x5t4l1n\n")
print("Enhanced by Nexulean")
# Main program
+28
View File
@@ -0,0 +1,28 @@
pkgname=nextor-ip-changer
pkgver=2.0.0
pkgrel=1
pkgdesc="A tool to change TOR IP instantly using a single click"
arch=('any')
url="https://github.com/0x5t4l1n/NexTOR_IP_CHANGER"
license=('MIT')
depends=('python' 'tor')
makedepends=('git')
source=("git+$url.git")
md5sums=('SKIP')
package() {
cd "$srcdir/NexTOR_IP_CHANGER/Nex_Tor_IP_changer"
# Install the main script to /usr/share/Nex
install -d "$pkgdir/usr/share/Nex"
install -m755 NexTOR.py "$pkgdir/usr/share/Nex/NexTOR.py"
# Create a launcher script as /usr/bin/nextor
install -d "$pkgdir/usr/bin"
echo -e "#!/bin/bash\npython /usr/share/Nex/NexTOR.py" > "$pkgdir/usr/bin/nextor"
chmod +x "$pkgdir/usr/bin/nextor"
# Docs and license
install -Dm644 "$srcdir/NexTOR_IP_CHANGER/README.md" "$pkgdir/usr/share/doc/$pkgname/README.md"
install -Dm644 "$srcdir/NexTOR_IP_CHANGER/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
+271
View File
@@ -0,0 +1,271 @@
# NexTOR Debian Package Quick Reference
## Essential Commands
### Building
```bash
# Quick build (recommended)
debuild -us -uc
# Build with verbose output
debuild -v -us -uc
# Build binary only
debuild -us -uc -b
# Build source only
debuild -us -uc -S
# After build, check results
ls -lh ../nextor_*.deb
```
### Quality Assurance
```bash
# Check for Debian policy violations
lintian ../nextor_1.1-1_all.deb
# Show all issues including info
lintian -i ../nextor_1.1-1_all.deb
# Check specific category
lintian -t debian_policy ../nextor_1.1-1_all.deb
```
### Installation
```bash
# Standard installation
sudo dpkg -i ../nextor_1.1-1_all.deb
# Fix dependency issues
sudo apt-get install -f
# Reinstall (if corrupted)
sudo dpkg --configure nextor
sudo apt-get install --reinstall nextor
# Complete removal
sudo apt-get purge nextor
```
### Testing
```bash
# Verify installation
which nextor
dpkg -l | grep nextor
# Test command
nextor --help
# View documentation
man nextor
# Test Python imports
python3 -c "from Nex_Tor_IP_changer import NexTOR; print('OK')"
```
### Inspection
```bash
# Package contents
dpkg -c ../nextor_1.1-1_all.deb
# Installed files
dpkg -L nextor
# Package info
dpkg -I ../nextor_1.1-1_all.deb
# Installed details
dpkg -s nextor
# Extract for inspection
mkdir /tmp/nextor-check
dpkg-deb -x ../nextor_1.1-1_all.deb /tmp/nextor-check
find /tmp/nextor-check
```
### Cleanup
```bash
# Clean build artifacts
debclean
# Manual cleanup
rm -rf build/ dist/ *.egg-info/
rm -f debian/nextor/
rm -f ../nextor_*
# Full source clean
fakeroot debian/rules clean
# Remove extracted inspection
rm -rf /tmp/nextor-check
```
## Common Issues & Fixes
| Issue | Command/Solution |
|-------|------------------|
| Build tool missing | `sudo apt-get install devscripts debhelper` |
| Dependency error | `sudo apt-get build-dep .` |
| Permission denied | `chmod +x debian/rules` |
| Import error | `python3 -c "from Nex_Tor_IP_changer import NexTOR"` |
| nextor not found | `sudo dpkg -i ../nextor_*.deb && sudo apt-get install -f` |
| lintian errors | Review `DEBIAN_PACKAGING.md` for fixes |
| Git signing issues | `git config user.signingkey <KEY_ID>` |
## Directory Structure
```
NexTOR_IP_CHANGER/
├── debian/ # Debian packaging files
│ ├── control # Package metadata
│ ├── changelog # Release history
│ ├── copyright # License (MIT)
│ ├── rules # Build rules
│ ├── install # File installation
│ ├── nextor.1 # Man page
│ ├── compat # Debhelper level 13
│ └── source/format # Format v3
├── Nex_Tor_IP_changer/ # Main Python package
│ ├── __init__.py # Package init
│ ├── NexTOR.py # Main executable
│ ├── nex.py # Helper functions
│ └── install.py # Install utilities
├── setup.py # Python setup
├── pyproject.toml # Modern Python build config
├── MANIFEST.in # Build manifest
├── BUILD_INSTRUCTIONS.md # Detailed build guide
├── DEBIAN_PACKAGING.md # Debian standards guide
├── KALI_SUBMISSION.md # Kali submission guide
├── LICENSE # MIT License
└── README.md # Project documentation
```
## Build Process Flow
```
1. Install build tools
└─> debhelper, dh-python, devscripts
2. Prepare source
└─> Ensure debian/ directory present
3. Build package
└─> debuild -us -uc
4. Run lintian
└─> All errors must be fixed
5. Test installation
└─> sudo dpkg -i, nextor command
6. Archive artifacts
└─> Save nextor_1.1-1_all.deb
7. Submit to Kali (optional)
└─> Follow KALI_SUBMISSION.md
```
## Package Metadata Quick View
```bash
# View package name and version
grep "^Package:\|^Version:" debian/control
# View dependencies
grep "^Depends:" debian/control
# View maintainer
grep "^Maintainer:\|^Uploaders:" debian/control
# View description
grep "^Description:" -A 10 debian/control
```
## For Kali Linux Submission
```bash
# 1. Update maintainer
nano debian/control # Change Maintainer to Kali Linux
# 2. Update changelog
nano debian/changelog # Add -1kali1 suffix
# 3. Push to GitLab
git add debian/
git commit -S -m "Prepare for Kali Linux"
git push origin submit/nextor-1.1
# 4. Create merge request on GitLab
# https://gitlab.com/kali-team/packages/nextor
```
## Performance Tips
```bash
# Parallel build (if available)
debuild -us -uc -j$(nproc)
# Faster cleanup
debclean -v
# Background build
debuild -us -uc &
# Check build progress
tail -f ../nextor_*.log
```
## Dependency Verification
```bash
# Check if dependencies are installed
apt-cache search python3-stem
apt-cache search python3-requests
apt-cache search tor
# Install dependencies for testing
sudo apt-get install python3-stem python3-requests tor
# Verify availability
python3 -c "import stem; print(stem.__version__)"
python3 -c "import requests; print(requests.__version__)"
```
## Version Scheme
**Current:** `1.1-1`
- `1.1` = Upstream version
- `-1` = Debian package revision
**For Future Updates:**
```
1.1-2 # Debian packaging fix (no code change)
1.2-1 # New upstream version
1.2-1kali1 # For Kali Linux submission
```
## Success Criteria
✓ All commands listed above complete without errors
`lintian` reports clean
✓ Package installs and works
`nextor` command is available
✓ Documentation is accessible via `man nextor`
✓ Dependencies are properly resolved
---
**Quick Links:**
- Detailed guide: [BUILD_INSTRUCTIONS.md](BUILD_INSTRUCTIONS.md)
- Debian standards: [DEBIAN_PACKAGING.md](DEBIAN_PACKAGING.md)
- Kali submission: [KALI_SUBMISSION.md](KALI_SUBMISSION.md)
- GitHub repo: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER
+130 -91
View File
@@ -1,110 +1,149 @@
# Nex_Tor_IP_Changer v1.0
# NexTor IP Changer v1.1.
### Automatically Change Your IP Address Using the Tor Network
#### This tool leverages the Tor project to periodically change your IP address. It is ideal for privacy enthusiasts or anyone requiring dynamic IP rotation.
## Features:
Automatically changes IP address via the Tor network.
Simple installation and usage.
Designed for Linux systems.
## Installation Instructions:
## Requirements:
Install Tor:
sudo apt install tor
## Install required Python libraries:
pip3 install requests[socks]
Alternatively, running the NexTor script will handle dependencies automatically.
## Steps:
### Clone the repository:
git clone https://github.com/Stalin-143/NexTOR_IP_CHANGER
## Navigate to the project directory:
cd Nex_Tor_IP_changer
## Run the installation script:
python3 install.py
### After installation, you can use the command Nex from any terminal to start the tool.
## Usage:
### Run the command:
Nex
## Follow the prompts:
Enter the time interval (in seconds) for IP changes.
Specify the number of IP changes (or set to infinite by entering 0).
Set your browser or application to use the SOCKS proxy at 127.0.0.1:9050.
## Notes:
The tool works on systems with Tor properly installed and running.
Configure your application or browser to use the proxy settings for IP rotation:
SOCKS Proxy: 127.0.0.1
Port: 9050
For infinite IP changes, enter 0 when prompted.
## Example:
Launch the tool:
Nex
Set time to change IP (e.g., every 60 seconds).
Set the number of changes (e.g., 10 or 0 for infinite changes).
Open your browser and configure the SOCKS proxy to 127.0.0.1:9050.
### Enjoy enhanced privacy and dynamic IP rotation!
## Image:
## After Running
![Screenshot_2024-11-20_00_42_09](https://github.com/user-attachments/assets/4a18015f-4910-493e-9f3a-0fd8fbf31b2e)
## after update 1.1 it show NexTor Instend on Stana
## RESULT
![Screenshot_2024-11-20_00_17_27](https://github.com/user-attachments/assets/308df2a7-9a58-4b4e-a04d-0042d9fa7819)
[![Self-Hosted Git](https://img.shields.io/badge/Self--Hosted-Gitea-green?style=flat-square\&logo=gitea\&logoColor=white)](https://git.w4nn4d13.tech/0x5t4l1n/NexTOR_IP_CHANGER)
🕵️‍♂️ **Automatically Change Your IP Address Using the Tor Network**
NexTor IP Changer is a lightweight, command-line tool designed to enhance online privacy by leveraging the Tor network to periodically rotate your IP address. This tool is perfect for privacy enthusiasts, security researchers, or anyone requiring dynamic IP rotation for legitimate purposes, such as testing network configurations or maintaining anonymity.
## License
🚀 **Features**
- **Automated IP Rotation**: Seamlessly changes your IP address using the Tor network at user-defined intervals.
- **Simple Command-Line Interface**: Run the tool with a single command (`nextor`) and follow intuitive prompts.
- **Lightweight and Efficient**: Minimal resource usage, optimized for Arch Linux systems.
- **Flexible Configuration**: Set custom time intervals and the number of IP changes, including an option for infinite rotation.
- **Application Integration**: Works with any application or browser that supports SOCKS proxy settings.
- **Arch Linux Support**: Available in the Arch User Repository (AUR) for easy installation.
🛠️ **Installation (Arch Linux Only)**
📦 **Requirements**
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
Before using NexTor IP Changer, ensure the following dependencies are installed and configured:
## Disclaimer
1. **Tor**: The tool relies on the Tor network for IP rotation.
```bash
sudo pacman -S tor
sudo systemctl enable --now tor
```
It's often good to include a disclaimer, especially for security-related tools, clarifying that the script should be used responsibly and that the author is not liable for any misuse.
2. **Python Libraries**: The `requests[socks]` library is required for proxy communication.
```bash
pip3 install requests[socks]
```
🔧 **Verify Tor is Running**
Ensure the Tor service is active before running the tool:
```bash
sudo systemctl status tor
```
If Tor is not running, start it with:
```bash
sudo systemctl start tor
```
This script is provided "as-is" without any warranties or guarantees. The author is not responsible for any misuse or unintended consequences that may arise from using this script. Please use it responsibly and in compliance with your local laws and network policies.
📦 **Install from AUR**
The easiest way to install NexTor IP Changer is through the Arch User Repository (AUR) using an AUR helper like `yay`:
```bash
yay -S nextor-ip-changer
```
This installs the tool system-wide, allowing you to run it with the `nextor` command:
```bash
nextor
```
📦 **Install from Source**
For users who prefer manual installation or want to customize the tool:
1. Clone the repository:
```bash
git clone https://github.com/0x5t4l1n/NexTOR_IP_CHANGER
```
2. Navigate to the project directory:
```bash
cd NexTOR_IP_CHANGER
```
3. Run the installation script:
```bash
python3 install.py
```
After installation, the `nextor` command will be available globally.
🧪 **Usage**
Launch the tool by running:
```bash
nextor
```
The tool will prompt you to:
- **Enter the time interval** (in seconds) between IP changes (e.g., `60` for every minute).
- **Specify the number of IP changes** (e.g., `10` for ten rotations, or `0` for infinite changes).
🔌 **Proxy Configuration**
To route your traffic through the Tor network and benefit from IP rotation, configure your application or browser to use the following SOCKS proxy settings:
- **Host**: `127.0.0.1`
- **Port**: `9050`
For example, in Firefox:
1. Go to **Settings > General > Network Settings**.
2. Select **Manual proxy configuration**.
3. Set **SOCKS Host** to `127.0.0.1` and **Port** to `9050`.
4. Enable **SOCKS v5** and save.
This ensures your traffic is routed through Tor with rotating IPs as configured by the tool.
🔔 **Notes**
- **Verify Tor Status**: Always confirm that the Tor service is running before using the tool (`sudo systemctl status tor`).
- **Infinite Rotation**: Enter `0` when prompted for the number of changes to enable continuous IP rotation.
- **Arch Linux Optimization**: The tool is specifically packaged for Arch Linux via the AUR, ensuring seamless integration.
- **Proxy Settings**: Incorrect proxy configurations in your application or browser may prevent IP rotation. Double-check the settings if issues arise.
- **Performance**: The tool is designed to be lightweight, but frequent IP changes may impact network performance depending on your connection.
🌟 **Contributing**
We welcome contributions from the community to improve NexTor IP Changer! Heres how you can get involved:
- **Bug Reports**: Found a bug? Open an issue on the [GitHub Issues page](https://github.com/0x5t4l1n/NexTOR_IP_CHANGER/issues) with a detailed description, including steps to reproduce and your system details.
- **Feature Requests**: Have an idea for a new feature? Submit a feature request via GitHub Issues, explaining how it would enhance the tool.
- **Pull Requests**: Want to contribute code? Follow these steps:
1. Fork the repository.
2. Create a new branch (`git checkout -b feature/your-feature-name`).
3. Make your changes and commit them with clear messages (`git commit -m "Add your feature description"`).
4. Push to your fork (`git push origin feature/your-feature-name`).
5. Open a pull request on the [GitHub repository](https://github.com/0x5t4l1n/NexTOR_IP_CHANGER).
- **Code Style**: Follow Python PEP 8 guidelines for code contributions. Ensure your code is well-documented and includes appropriate comments.
- **Testing**: Test your changes thoroughly on an Arch Linux system with Tor installed to ensure compatibility.
📄 **License**
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
⚠️ **Disclaimer**
This script is provided "as is" without any warranties or guarantees. The author is not responsible for any misuse or unintended consequences that may arise from using this script. Please use it responsibly and in compliance with your local laws and network policies.
💰 **Support the Project**
If you find NexTor IP Changer useful, consider supporting its development:
[![BuyMeACoffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-ffdd00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://buymeacoffee.com/stalin143)
[![PayPal](https://img.shields.io/badge/PayPal-00457C?style=for-the-badge&logo=paypal&logoColor=white)](https://paypal.me/stalinS143)
📬 **Contact**
For questions, feedback, or support, reach out via the [GitHub Issues page](https://github.com/0x5t4l1n/NexTOR_IP_CHANGER/issues). You can also connect with the community through discussions on the repository.
## 💰 You can help me by Donating
[![BuyMeACoffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-ffdd00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://buymeacoffee.com/stalin143) [![PayPal](https://img.shields.io/badge/PayPal-00457C?style=for-the-badge&logo=paypal&logoColor=white)](https://paypal.me/stalinS143)
+29
View File
@@ -0,0 +1,29 @@
## Security Policy
### Reporting Vulnerabilities
If you discover any security vulnerabilities, please report them responsibly.
Send detailed vulnerability reports to:
Email: w4nn4d133@gmail.com
OpenPGP Fingerprint:
`DEBE5591C54E947279C14A6BF53D272DA9ADAF98`
Public Key:
https://keys.openpgp.org/vks/v1/by-fingerprint/DEBE5591C54E947279C14A6BF53D272DA9ADAF98
Alternatively, you may submit your report through our official advisory channel (if available).
### Guidelines for Reporting
Please include:
- A clear description of the vulnerability
- Steps to reproduce the issue
- Proof-of-Concept (PoC), if possible
- The potential security impact
- Affected versions/components
We appreciate responsible disclosure and will work to validate and address legitimate security issues promptly.
+54
View File
@@ -0,0 +1,54 @@
[build-system]
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
name = "nextor"
version = "2.0"
description = "Tor exit node IP address rotator for privacy and security testing"
readme = "README.md"
requires-python = ">=3.6"
license = {text = "MIT"}
authors = [
{name = "Stalin", email = "stalin@example.com"}
]
keywords = ["tor", "ip-rotation", "privacy", "security", "anonymity", "networking"]
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: Internet",
"Topic :: Security",
"Topic :: System :: Networking",
"Topic :: Utilities",
]
dependencies = [
"requests[socks]>=2.22.0",
"stem>=1.8.0",
]
[project.urls]
Homepage = "https://github.com/0x5t4l1n/NexTOR_IP_CHANGER"
Repository = "https://github.com/0x5t4l1n/NexTOR_IP_CHANGER.git"
Issues = "https://github.com/0x5t4l1n/NexTOR_IP_CHANGER/issues"
[project.scripts]
nextor = "Nex_Tor_IP_changer.NexTOR:main"
[tool.setuptools]
packages = ["Nex_Tor_IP_changer"]
[tool.setuptools.package-data]
Nex_Tor_IP_changer = ["*.py"]
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from setuptools import setup, find_packages
with open("README.md", "r", encoding="utf-8") as fh:
long_description = fh.read()
setup(
name="nextor",
version="2.0",
author="Stalin",
author_email="stalin@example.com",
description="Automatically rotate Tor exit nodes and display updated IP address",
long_description=long_description,
long_description_content_type="text/markdown",
url="https://github.com/0x5t4l1n/NexTOR_IP_CHANGER",
packages=find_packages(),
classifiers=[
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Environment :: Console",
"Topic :: Internet",
"Topic :: Security",
"Topic :: Utilities",
],
python_requires=">=3.6",
install_requires=[
"requests[socks]>=2.22.0",
"stem>=1.8.0",
],
entry_points={
"console_scripts": [
"nextor=Nex_Tor_IP_changer.NexTOR:main",
],
},
include_package_data=True,
zip_safe=False,
)