Frequently Asked Questions

๐Ÿ’ผ Hire Us - For Technical Outgoing Support

How to migrate to Xtream-Masters OTT Panel

There is two way to migrate your IPTV Panel in the most reliable Xtream-Masters Panel.


#New server migration.


  1. Login to your Xtream-Masters CMS cPanel with ID that start from XM: xm:********, then add the main server for installation.
  2. Once installation process complete:
    • Click Migrate button
    • Insert database credentials
    • Ensure SSH port accessibility
    • Wait for migration completion
    • Alternative: Upload SQL dump file
  3. Password Reset after migration complete:
    • Click menu โ†’ admin password reset option
    • Update admin credentials
  4. Final Configuration:
    • Goto cms dashboard, Set Panel Port and Login Panel as admin
    • Navigate to Settings โ†’ Click update tables button
๐Ÿš€ Now Bring Servers Online.
Main Server
  1. Goto Servers Page, Edit Main Server Set SSH Password
  2. Navigate to: Servers Page โ†’ Click Main Option โ†’ Restart Service
Load Balancers
  1. Edit Each LB Set SSH password
  2. Navigate to: Servers Page โ†’ Click LB Option โ†’ Re-install Balancer
FAQ: Vods not working after migration






#Existing server migration.


  1. Database Backup:
    mysqldump -u [uname] -p db_name > db_backup.sql
  2. Download backup file locally
  3. Backup server images/files
  4. Reinstall server with Ubuntu 18.04 / 20.04 / 22.04
  5. Panel Configuration:
    • Login to Master CMS (xm:********)
    • Add server for installation
  6. Upload backup to /home/xtreamaster/wwwdir
  7. Migration Process:
    • Navigate to Migrate โ†’ Migrate by URL
    • Input backup file URL
  8. Password Reset after migration complete:
    • Click menu โ†’ admin password reset option
    • Update admin credentials
  9. Final Configuration:
    • Goto cms dashboard, Set Panel Port and Login Panel as admin
    • Navigate to Settings โ†’ Click update tables button
๐Ÿš€ Now Bring Servers Online.
Main Server
  1. Goto Servers Page, Edit Main Server Set SSH Password
  2. Navigate to: Servers Page โ†’ Click Main Option โ†’ Restart Service
Load Balancers
  1. Edit Each LB Set SSH password
  2. Navigate to: Servers Page โ†’ Click LB Option โ†’ Re-install Balancer
FAQ: Vods not working after migration

How to change main server || Re-install main server

  1. Take your main server images or any important files backup.
  2. Log in to the admin ID:
    • Go to the Backup section
    • Click the Generate Backup Now button
    • Download latest backup file from: /home/xtreamaster/backups/
  3. Server Migration:
    • Login to Master CMS cPanel (ID: xm:********)
    • Delete existing server
    • Please input the new server or re-install the server OS, then insert the SSH details.
    • Wait for installation completion
  4. Backup Restoration:
    • Upload *****.sql.gz to /home/xtreamaster/backups/
    • Login with admin/admin credentials
    • Navigate to Backup section
    • Click Restore Backup button
  5. Update Main Server IP: (Optional if main server changed)
    • Login to Xtream-Masters CMS cPanel (ID: xm:********)
    • The system will automatically update the main server IP in the database if it changes.
  6. Troubleshooting Load Balancers:
    • Navigate to Manage Server section
    • For each load balancer:
        Click option button
        Select Restart Service
    • Wait up to 2 minutes for load balancer become online.

How change panel port

    Port Change
    To change panel default port 7709
    • Login to Xtream-Masters CMS cPanel (ID: xm:********)
    • In dashboard Click Edit Port Button
    • Set New port Make sure not already used by any other service Then click Save button
    • Approximately 2 minutes will take to apply changes and You all Done.

API Documentation & Integration Guide

Reseller API

Business Integration

Automate your reseller operations with our comprehensive API:

  • Create/manage client accounts
  • Generate subscription links
  • Automate billing

Menu > System Security > Access Codes Page for reseller api access code end-point.

๐Ÿ“„ Full Reseller API Documentation

Player API

End-User Integration

Integrate our streaming service with any player application:

  • Retrieve content lists
  • Get EPG data
  • User Authentication
  • Parental controls
๐Ÿ“„ Full Player API Documentation

ActiveCode API

End-User Integration

Integrate our streaming service with any player application:

  • Retrieve content lists
  • Get EPG data
  • User Authentication
  • Parental controls
๐Ÿ“„ Full ActiveCode API Documentation

API Best Practices

  • โ€ข Rotate API keys quarterly
  • โ€ข Implement proper error handling
  • โ€ข Cache responses where appropriate

Protect Your Panel from DDoS and Brute Force Attacks

Most of the time, competitors launch attacks because they cannot compete with the quality you have achieved through hard work. As a result, they attempt to damage your service's reputation by doing attacks, To protect your panel follow below giving instructions.

  1. Access Code Configuration:
    • Log in to your admin panel
    • Navigate to System Security > Access Code
    • Enable both options:
      • "Enable access code feature for panel logins"
      • "Disable panel login page without access code link"
  2. Create Admin Panel Code:
    • Click Create New Code (top of page)
    • Generate code using generate icon
    • Configure settings:
      • Type: Admin Panel
      • Select admin groups
      • Optional: IP restrictions
    • Click Add
  3. Reseller Panel Setup:
    • Repeat admin process for reseller panel
    • Best Practice:
      • Create multiple codes for different reseller types
      • Helps identify attack sources through targeted codes
  4. Secure Mags Portal:
    • Create Mac Access code:
      • "Enable access code mags portal instead use default /c"
      • Helps identify attack sources through targeted codes or if you don't use mac never share code with any
  5. Final Implementation:
    • Copy generated access code links
    • Distribute to authorized users:
      yourdomain.tld:port/ac_XXXXXXX
Security Enhancements:
  • Direct yourdomain.tld:port login disabled
  • Only valid access code links grant login access
  • Brute-force attempts reduced by 90%+
  • Enables precise attack source identification

By implementing these steps, you enhance your panelโ€™s security and minimize exposure to malicious attacks.

Install Xtream-Masters OTT Panel On Existing OS without reinstall it.

Critical Recommendation: For optimal ๐™จ๐™š๐™˜๐™ช๐™ง๐™ž๐™ฉ๐™ฎ, always install the panel on a fresh Ubuntu OS installation.
Only proceed with the existing OS installation if you can't reinstall server some important reasons
  1. Backup MySQL Data
    • Create complete database backups
    • Download backup files to your local PC
    • Do not proceed without verified backups
  2. Remove Existing MySQL Server
    # Execute these commands in sequence:
    sudo service mysql stop
    sudo apt-get --force-yes remove mysql-server mysql-client
    sudo apt-get --force-yes purge mysql-server mysql-client
    sudo apt-get --force-yes remove mysql-common -y
    sudo apt-get --force-yes purge mysql-common -y
    sudo apt-get --force-yes autoremove --purge -y
    sudo apt-get autoclean
    sudo rm -rf /etc/mysql
    sudo rm -rf /var/lib/mysql
    sudo rm -rf /var/log/mysql
    Copy all commands carefully
    This will completely remove MySQL and all associated data. Ensure backups exist before proceeding.
  3. Install Panel
    • Enter server SSH details in Master CMS panel
    • Initiate installation process
    • Verify installation finish

Swap Link Feature Explained

Primary Purpose: The Swap Link feature acts as an emergency backup system for your local streams, allowing instant source switching when issues occur.

๐Ÿ”„ How It Works

  1. Initial Setup:
    • Configure backup re-stream links in the Swap Link section
    • These remain inactive until needed
  2. Activation:
    • When local streams fail (entire category down)
    • Navigate to Streams > Advanced Streams Tool > Swap Stream Source
  3. Execution:
    • Select affected category
    • Click to swap to backup source
    • System instantly exchange stream source and swap links
  4. Restoration:
    • After fixing local stream issues
    • Return to same swap tool
    • Revert to original stream source
Important Notes:
  • Swap operates at category level - all channels in category switch together
  • Backup links should use different infrastructure than primary
  • Empty swap link won't effect just ignore and stream source will keep remine

Recommended Streaming Settings Configuration

General Settings > Streaming

Some users are configuring their systems improperly, often without understanding how they work, which leads to system issues. They then contact support, reporting problems such as system failures or poor streaming performance.
To help you achieve optimal streaming results, please follow the detailed configuration guidelines provided below.

New Alternative Features:

How to change existing main server IP

  1. Method 1
    • Login to Master CMS cPanel (ID: xm:********)
    • Edit Main server
    • Set New IP And Click Save
  2. Method 2
    • Login to Master CMS cPanel (ID: xm:********)
    • Download Config Backup
    • Update IP And Restore Config.
  3. Update Main Server IP In DNS.
  4. Troubleshooting Load Balancers:
    • Navigate to Manage Server section
    • For each load balancer:
        Click option button
        Select Restart Service
    • Wait up to 2 minutes for load balancer become online.

MAC Playlist Loaded But Content Not Playing

Problem: MAC device shows channel list successfully but streams won't play. This is typically caused by incorrect DNS configuration on the main server or disabled MAG Security settings.
  1. Identify the Issue:
    • Playlist loads = Panel connection is working
    • Streams won't play = DNS misconfiguration or MAG Security disabled
    • MAC uses playlist DNS for streaming, not panel DNS
  2. Check Main Server DNS Configuration:
    • Navigate to Servers Page โ†’ Edit Main Server
    • Carefully review ALL three DNS input fields:
      • Users CDN: Must point to main server IP
      • Private Users CDN: Must point to main server IP
      • Proxy IP or DNS [All]: Must point to main server IP
  3. Enable MAG Security:
    • Go to General Settings
    • Navigate to Stalker Portal Tab
    • Enable MAG Security option
    • Save the settings
    Note: MAG Security must be enabled for MAC devices to authenticate and stream properly.
  4. Common DNS Mistakes to Fix:
    โŒ Wrong Configurations
    • Spelling errors: yourdns.xy instead of yourdns.xyz
    • Wrong server pointed: DNS pointing to load balancer instead of main server
    • Missing DNS record: Domain added but A record not created
  5. Apply Correct Configuration:
    • Ensure at least one DNS field contains valid domain
    • Verify domain's A record points to main server IP
    • Confirm MAG Security is enabled
    • Save changes in server settings
    • Wait 2-3 minutes for propagation
    • Test MAC device again
Quick Fix Checklist:
  • โœ“ DNS spelled correctly (no typos)
  • โœ“ DNS points to main server IP
  • โœ“ DNS is accessible (ping test works)
  • โœ“ MAG Security enabled in Stalker Portal settings
Pro Tip: If unsure about DNS configuration, temporarily put your main server IP in the Proxy IP or DNS [All] field. If MAC starts working, the issue confirms DNS misconfiguration. Also ensure MAG Security is enabled in General Settings โ†’ Stalker Portal Tab for proper MAC device authentication.

Panels Switching Concerns And Common Questions


We know - switching panels feels risky. You've built your business, have active customers, and can't afford downtime. Let's address your concerns directly.

What If You Want to Leave Later?

  • Xtream-Masters Database works with all Moujar panels on the market to make sure move to us with peace of mind and fully freedom.
  • Xtream-Masters backups are supported by all panels in the market, ensuring there is no hesitation in switching from Xtream-Masters panel

What If Our Service Goes Down?

Your business continues running because:

  • What if admin/reseller panel down we've upto 5 panel CDN you can move to another one to make sure panel always working.
  • Panel core runs on YOUR server - not dependent on our infrastructure to make sure end users lines always working.

  • Triple backup system keeps your data safe:
    • Auto backup at: /home/xtreamaster/backups/
    • Optional: Save backup copy in XDrive cloud (free addon) if main faild still have backup copy
    • Optional: Save backup copy in your Dropbox (via api) if main faild still have backup copy
  • Xtream-Masters backups are supported by all panels in the market, ensuring there is no hesitation in switching from Xtream-Masters panel

What About Price Changes?

  • Current price: $40/month unlimited usage
  • If prices ever change: 3 months advance notice in the website guaranteed

The Safety Net - Your 3-Day Trial

We don't offer free trials, but here's something better:

  • Pay via PayPal or credit card (buyer protection included)
  • Full refund available within 3 days - no questions asked
  • Enough time to migrate, test and explore everything, and decide
  • Keep your old panel running during this period for safety

Quick Start Process

  1. Purchase at xtream-masters.com ($40)
  2. Receive Master CMS login (ID starts with xm:********)
  3. Add your server SSH details - wait for panel install in your server (max 5 minutes)
  4. Click Migrate for XtreamUI / XUI / NXT / Other panels database migration
  5. Test for 3 days - request refund from support if not satisfied (refunded within 3 working days)
Bottom Line: Try us for 3 days risk-free. If it doesn't work out, get your money back and migrate elsewhere with all your data intact. We're confident you'll stay, we'll never force you, but our amazing work, panel features, security and stability will convince you.

Ready to start? Get your license here โ†’

How to Customize Category & Bouquet Order for Different Regions

New Feature: Customize content presentation for different regions. Show European channels first for European customers, Arab channels first for Middle East customers, and so on.

๐ŸŒ Regional Content Management

Both admins and resellers can now control how content appears to end users based on their region or preferences.

  1. Admin Controls - Set Category Order in Bouquets:
    • Navigate to Bouquets Management
    • Edit any bouquet
    • Join and sort categories to reorder them
    • Example arrangements:

      European Bouquet:

      • 1. UK Channels
      • 2. German Channels
      • 3. French Channels
      • 4. Other regions...

      Arab Region Bouquet:

      • 1. Arabic Entertainment
      • 2. Arabic Sports
      • 3. Arabic News
      • 4. International...

  2. Reseller Controls - Reorder Bouquets:
    • Reseller can also sort Bouquets as thier clients Requirements
    • Go to Edit Line for any user
    • In bouquet selection area, use arrows to move bouquets up/down
    • Most relevant bouquet appears first for their customers
    • Save changes to apply new order

  3. Practical Use Cases:
    ๐Ÿ’ก Smart Organization Examples
    • For UK Reseller:
      • Place UK Sports at top during Premier League season
      • UK Entertainment channels follow
      • International content at bottom

    • For Arabic Reseller:
      • Ramadan channels first during holy month
      • Arabic series and movies next
      • Kids Arabic content for family packages

    • For Sports Package:
      • Live sports channels at top
      • Sports news channels second
      • General entertainment last
  4. Setting Up Regional Bouquets:
    • Create separate bouquets for each region
    • Assign appropriate resellers to regional bouquets
    • Let resellers fine-tune order for their market
    • Monitor user engagement to optimize further
Best Practices:
  • Keep most-watched content at top (check statistics)
  • Consider time zones when ordering news channels
  • Update order for special events (World Cup, Olympics, etc.)
  • Allow resellers flexibility - they know their market best
Benefits: Better user experience leads to higher retention. Customers find their preferred content faster, reducing support requests and increasing satisfaction.

How to enable auto on_demand stream analyzer

  1. Create a user line with:
    • Minimum 10 connections
    • All channel bouquets should be subscribed
  2. Configure Player Credentials:
    • Go to General Settings > Xtream tab
    • Input the created line username/password in Player Credentials section
    • Click Save
  3. Access Stream Configuration:
    • Navigate to Mass Tools > Streams Tools
  4. Enable Stream Analysis:
    • Switch to Stream Analyzer tab
    • Enable Auto stream analyzer
  5. Final Configuration:
    • Configure your server Streaming DNS
    • Adjust other settings as needed
    • Click Save
  6. Monitoring
    • Goto Streams Page
    • Check Status column
    • If first icon red means on_demand source down or slow
    • If secound icon red means source down more then 7 days and remove from user list until fix
System will now automatically:
  • Highlight offline stream sources
  • If source down more than 7 days hide it from user list until fix
  • Auto-fix audio issues by adjusting prob size
  • Restart channels when needed

How to prevent subscription sharing across multiple devices

  1. Enable VideoLog System:
    • Navigate to General Settings > Streaming Tab
    • Enable Connections Exceed VideoLog option
    • Save changes
  2. Advanced Connection Monitoring:
    • System will now show to Client the video message log instead of playback error:
      "Your connection limit reached!
      Active sessions: [X/X connections]
      Devices and new attempt details
      Stop streaming on other devices or change line password"
    • Real-time connection tracking displays:
      • Allowed concurrent connections
      • Currently used connections
      • Attempt history of excess usage
VideoLog System Benefits:
  • Detects shared credentials across multiple IPs
  • Prevents password sharing without blocking legitimate users
  • Provides actionable insights for account security
  • Acknowledge to client the account leak or shared need password update.
  • Protect system from leaks line and make server dmca free.

Server Disk Full Problem (Simple find way)

  1. Login SSH
    • Go to: `/home/x_m/bin/nginx/logs/` to clear log files.
    • Use command: df -h to check the overall disk usage and status.
    • Use command: du -sh /home/* to check the size of each folder in the home directory.
    • Identify which folder is using the most disk space.
    • If you need more detail, navigate into the large folders with: du -sh /home/your-folder/* to list individual file sizes.

Server Disk Full Problem (Advanced find way)

  1. Check Overall Disk Usage
    • Run df -h to see disk usage across all mounted filesystems
    • Look for /home or root (/) filesystems with high %Use
  2. Identify Large Directories
    • Check /home directory size: du -sh /home
    • List directories sorted by size:
      du -sh /home/* | sort -rh
    • Drill down into large directories:
      cd /path/to/large-dir && du -sh * | sort -rh
  3. Find Large Files
    • Find files larger than 1GB:
      find /home -type f -size +1G -exec ls -lh {} \;
    • Sort files by size in current directory:
      ls -lahS
  4. Common Cleanup Targets
    • Clear old log files: /var/log and application log directories
    • Check for core dumps: find / -name core -size +100M
    • Clean package cache: apt-get clean or yum clean all

Troubleshooting FAQs

  • Check disk space:
    df -h - Shows usage by filesystem
  • Find directory sizes:
    du -sh /* - Check top-level directories
    du -h --max-depth=1 /path - Limit directory depth
  • Deleted files still in use?
    Check with lsof +L1 - Shows deleted files held by processes
  • Quick space check:
    ncdu - Interactive disk usage analyzer (may need to install)
Safety Tips:
  • Always backup before deleting critical files
  • Use log rotation for application logs
  • Consider compressing old files instead of deleting

How to enable root access

UBUNTU
๐Ÿ” SSH Root Access Configuration

#If you have an Ubuntu server and the SSH login comes with the "ubuntu" username, you can change the "ubuntu" user to the "root" user by following this setup.

  1. #open putty program and login as `ubuntu` user then run following cmds.
    sudo -i
  2. # now run passwd command and set new password for `root` user.
    root@server:~#
    passwd
  3. #now run these commands.
    apt-get install wget -y wget -O "/etc/ssh/sshd_config" "https://xtream-masters.com/files/tutorials/ROOT-ENABLE.git" service sshd restart reboot

#Congratulations on your Ubuntu server setup! Your server is now accessible by the root user using the password you have just set.

Mysql database connection failed problem

If you getting Mysql database connection failed message while to login panel, you can follow these setups.

1 - Log in to your main server using the 'PuTTY' program and run this command.

sudo service mysql restart

How to reset admin id password

If you forget or lose admin access follow the setups.

  1. ๐Ÿ”‘ Admin Recovery: Log in to your master cms Cpanel id that starts from xm:
    โ†’ Click Reset admin access in narbar menu
    โ†’ Change the admin id password

Server bandwidth not showing or statistics not showing

If any server (balancer) bandwidth not showing follow the setups.

  1. ๐Ÿ”‘ Admin: Log in to your admin panel id.
    โ†’ Menu Manage server page then edit the spacific server
    โ†’ Goto Advance tab
    โ†’ Select Correct Network interface and save it
    โ†’ Optional: Find correct Network interface run cmd into following server ifconfig
  2. If bandwidth start showing but users & connections statistics not showing follow this FAQ: 0 Connection On LB

Admin And Reseller Panel not working | how to change panel port

If you are encountering issues with the admin and reseller panels not functioning, even though your main server and live stream is up and running, please follow the steps below to resolve the problem.

๐Ÿ”‘

CMS Admin

Log in to your cms admin panel id that start from xm:******

โ†’ Check what the port is set to for the admin and reseller panel
โ†’ Try accessing panel directly: http://{your_server_ip}:{panel_port}

If still not working (port conflict solutions):

1 Disable panel port that using by other service that you need to check and change
2 Change panel port from master cms panel

How to active phpmyadmin

  1. ๐Ÿ”ง Server Setup:

    Login your main server putty and run the provided cmd below.

    wget -O "/home/xtreamaster/wwwdir/adminer_579632.php" https://github.com/vrana/adminer/releases/download/v5.4.1/adminer-5.4.1-en.php
  2. ๐ŸŒ Access Adminer:

    Now access adminer by this link โ†’

    http://{your_streaming_dns}:{streaming_port}/adminer_579632.php?server=127.0.0.1:7999
  3. ๐Ÿ”‘ Database Access:

    Now login into your Master CMS cPanel with ID that start from XM: Then edit your main server a modal will open where you can find your database login info.

โ„น๏ธ Info: Adminer is one file advanced MySQL manager - more powerful, secured and optimized.

Main Server or Load-Balancer Service Down

  1. โš™๏ธ Configuration Update:

    Goto settings page and click Update Tables button.

  2. ๐Ÿš€ Now Bring Servers Online.
    Main Server
    1. Goto Servers Page, Edit Main Server Set SSH Password
    2. Navigate to: Servers Page โ†’ Click Main Option โ†’ Restart Service
    Load Balancers
    1. Edit Down LB Set SSH Password (if not set already)
    2. Navigate to: Servers Page โ†’ Click LB Option โ†’ Restart Service (OR) Re-install Balancer

๐Ÿšจ After migration: If any LB fails to come online:

  • Disable previous installation by removing corresponding folder from /home/ dir
  • Reboot the server

โ›‘๏ธ Advanced Debugging:

If still remain down, trace the error by run command in effect server putty:

root@server:~#
bash /home/xtreamaster/start_services.sh

How to Restore Database Fast and Carefully

โš ๏ธ Why Database Restoration Fails or Slows Down

During restoration, Linux locks database tables by default. On a production server with constant incoming requests, these get queued up, causing system confusion, crashes, and extremely slow restoration.

Solution: Temporarily disable web access during restoration to prevent incoming requests from interfering with the database restoration process.

  1. Start Restoration & Immediately Disable Web Access:
    • Click Restore Database in your admin panel
    • Immediately after clicking restore, open SSH and run:
      root@server:~#
      mv /home/xtreamaster/wwwdir /home/xtreamaster/wwwdir.disabled
    • This instantly blocks all incoming requests, modifications, and log inserts
    • System can now focus 100% on restoration without interruptions
  2. Monitor Restoration Progress:
    • Your admin panel will become inaccessible during restoration
    • Periodically try to access any dashboard page
    • Restoration is complete when: You can successfully load any admin panel page again
    Testing tip: Keep refreshing your browser on the dashboard page. When it loads instead of showing an error, restoration is complete.
  3. Re-enable Web Access After Completion:
    • Once you confirm restoration is complete (panel accessible), run:
      root@server:~#
      mv /home/xtreamaster/wwwdir.disabled /home/xtreamaster/wwwdir
    • Web access is now restored and system operates normally

๐Ÿš€ Performance Benefits
  • Restoration completes 5-10x faster without request interference
  • Prevents database lock conflicts and system crashes
  • Ensures data integrity during restoration
  • No corrupted tables from interrupted processes
Critical Reminders:
  • Always backup your current database before restoring another one
  • Timing is crucial - disable web access immediately after clicking restore
  • Don't forget to re-enable web access after restoration completes
  • For large databases (>5GB), this method is especially important

Main Server IP Showing in Playlist - DNS Configuration Fix

Problem: Main server IP is exposed in playlist outputs and channel icons instead of using the configured DNS.
  1. Fix DNS Configuration:
    • Navigate to Servers Page โ†’ Edit Main Server
    • Locate the three DNS input fields and read each info icon carefully
    • Critical: Set your DNS in Proxy IP or DNS [All] field
      Example: streaming.yourdomain.com
    • This DNS must point to your main server IP
    • Save the configuration

  2. Understanding DNS Fields Priority:
    • Users CDN: For normal users (optional)
    • Private Users CDN: For users with Private CDN enabled (optional)
    • Proxy IP or DNS [All]: Default fallback - REQUIRED
    If Users CDN is not set, all connections will use the Proxy IP or DNS [All] field. This field is mandatory for proper DNS operation.

  3. Fix Existing Channel Icons:
    • If your main server ip coming in channels icon
    • menu Channels Advanced Streams Tools > Logo DNS Changer
    • Add YOUR_OLD_IP which comes out in playlist.
    • Replace your.dns.com with your configured DNS

  4. Verify Changes:
    • Wait 10 minutes to update playlist cache.
    • Generate a new playlist for testing
    • Check that URLs now show DNS instead of IP
    • Verify channel icons use DNS in their paths
Common Mistakes to Avoid:
  • Leaving Proxy IP or DNS [All] field empty - this is the primary DNS field
  • Not updating existing database entries after DNS configuration
  • Using DNS that doesn't properly resolve to your server IP

How to Install SSL for Admin Panel

  1. ๐Ÿ”‘ Port Setup:
    1. Login to your Xtream-Masters CMS panel (Master-ID starting with xm:)
    2. Set SSL-supported port for admin panel from these options:
      2053, 2083, 2087, 2096, 8443

    โš ๏ธ Important: Ensure selected port isn't used by other services (e.g., streaming ports)

  2. ๐Ÿ”Œ SSL Activation:
    Method 1
    โ˜๏ธ Cloudflare Automatic SSL
    1. Add your domain to Cloudflare
    2. Point your server IP as `A` DNS record with Cloudflare proxy enabled
    3. Goto SSL Section Set SSL -> Off
    4. SSL will activate automatically within 5 minutes

โœ… Final Verification:

Access your admin panel using HTTPS protocol:

https://your-domain.tld:[selected-port]

Example: https://{your_dns}.tld:{ssl_port}

How to Install SSL for Admin Panel & Streaming (Cloudflare & Local SSL Methods)

Choose Your Method: Use Cloudflare for easy setup (Method 1) or install local SSL certificates for full control (Method 2).

๐Ÿ” Method 1: Cloudflare SSL (Easiest)

  1. Set SSL Port:
    • Login to Master CMS (ID: xm:********)
    • Choose a Cloudflare-supported port:
      443, 2053, 2083, 2087, 2096, 8443
  2. Configure Cloudflare:
    • Add domain to Cloudflare
    • Create A record pointing to server IP
    • Enable proxy (orange cloud)
    • Go to SSL/TLS settings โ†’ Set to Flexible or OFF
  3. Access Panel:
    https://youryourdomain:{port}
Important: Do NOT install local SSL when using Cloudflare Flexible or OFF mode.

๐Ÿ”’ Method 2: Local SSL Certificate (Advanced)
Step 1: Install SSL for Streaming Port
  1. Go to Servers Page โ†’ Edit Main Server
  2. Add your domain name in the domain field
  3. Save changes
  4. Go to โ†’ SSL Tab
  5. Click Install SSL and monitor logs
  6. Wait for "SSL installed successfully" message
Step 2: Configure HAProxy for Admin Panel SSL

2.1 - Edit HAProxy Configuration:

root@server:~#
nano /etc/haproxy/haproxy.cfg

Add these lines BEFORE the defaults section:

# SSL/TLS settings
tune.ssl.default-dh-param 2048
ssl-default-bind-ciphers ECDHE+AESGCM:ECDHE+AES256:ECDHE+AES128:!PSK:!RC4:!3DES:!aNULL:!MD5
ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets

2.2 - Prepare SSL Certificate:

root@server:~#
# Create certificate directory
sudo mkdir -p /etc/haproxy/certs

# Combine certificate files (replace YOUR_DOMAIN with actual domain)
sudo cat /home/x_m/bin/certbot/config/live/YOUR_DOMAIN/fullchain.pem \
/home/x_m/bin/certbot/config/live/YOUR_DOMAIN/privkey.pem \
> /etc/haproxy/certs/YOUR_DOMAIN.pem


# Set permissions
sudo chmod 600 /etc/haproxy/certs/YOUR_DOMAIN.pem
sudo chown haproxy:haproxy /etc/haproxy/certs/YOUR_DOMAIN.pem

2.3 - Update Bind Configuration:

Find the line starting with bind *:{port} and modify it:

# Single domain:
bind *:{port} ssl crt /etc/haproxy/certs/YOUR_DOMAIN.pem

# Multiple domains:
bind *:{port} ssl crt /etc/haproxy/certs/domain1.pem crt /etc/haproxy/certs/domain2.pem

2.4 - Test and Apply:

root@server:~#
# Test configuration
sudo haproxy -f /etc/haproxy/haproxy.cfg -c

# If "Configuration file is valid", reload:
sudo systemctl reload haproxy
Step 3: Cloudflare Settings (If Using Cloudflare)
  • Since you have local SSL installed
  • Go to Cloudflare SSL/TLS settings
  • Change from "Flexible" or "OFF" to Full or Full (Strict)

โš ๏ธ Critical Rules to Remember

  • HTTPS ports need HTTPS protocol: https://yourdomain:{port}
  • Never mix: Don't use HTTP with HTTPS ports or vice versa
  • Cloudflare users:
    • Flexible or OFF mode = NO local SSL needed
    • Full mode = Local SSL required
Verification: Access your panel at https://yourdomain:port. Browser should show padlock icon indicating secure connection.


๐Ÿ’ผ Professional SSL Setup Service

Still having trouble with SSL configuration? Let our experts handle it for you!

  • Service includes:
    • Complete SSL setup for one domain
    • HTTPS configuration for both admin panel and streaming port
    • Works with or without Cloudflare
    • Testing and verification
  • One-time fee: $99
  • Turnaround time: Same day setup
To request professional setup: Contact support via WhatsApp or open a ticket mentioning "SSL Setup Service" and we'll handle everything for you.

Main Server Down or Load-Balancer Down

If your main server is down

  1. Manage serversโ€“> edit main serverโ€“> check ports and put again your ssh passwordโ€“> saveโ€“> full reload
  2. Check if any proxy cut down connection between your main and Client connection
  3. Check if you can access ssh
  4. Once enter ssh run : df โ€“h to check if you have any 100% full folder
  5. If yes delete and create some free space
  6. Run service mysql restart and wait for your server to respond, after that check if you can access your panel again
  7. Run /home/xtreamaster/start_services.sh and check what error you get. Most of the times this error will guide you on what to do next.
  8. As a final solution, reboot your main server

If your load balance is down

  1. Check if you can access ssh
  2. Once enter ssh run: df โ€“h to check if you have any 100% full folder
  3. If yes delete and create some free space
  4. Run /home/xtreamaster/start_services.sh and check what error you get. Most of the times this error will guide you on what to do next.
  5. As a final solution, reboot your load balancer
  6. Reduce the server load

Vods not working after migration

๐Ÿš€ Bring Load-Balancer Servers Online (if offline)
Load Balancers
  1. Edit Each LB Set SSH password
  2. Navigate to: Servers Page โ†’ Click LB Option โ†’ Re-install Balancer

If you have VODs not working after migration that's normal becouse of core change you need re-encode agian, for that we've created an automated one-click tool that you can use.

My server under ddos attack - Brute Force or Scans Attacks

    If your main server Request per sec: 500 or Load-Balancer Request per sec: 200 above, your server is under ddos attack, follow below the steps to protect your server.

  1. Menu โ†’ Manage server page
    • Edit main / LBs server
    • Goto Server Guard tab
    • Enable Server Guard
    • Enable i'm under attack mood
    • Enable botnet fighter
    • Read the all avaliable option with full attention and do config then save it.
  2. Admin Profile โ†’ Goto General Settings Page
    • Click Xtream Tab
    • Disable XML EPG - ON
    • Disable Player_API EPG - ON
    • And Save Config.
  3. Admin Profile โ†’ Goto General Settings Page (Additional)
    • Click BruteForce Attacks Tab
    • Enable All Checkbox
    • Requests Amount for Blacklist 25
    • In Seconds 5
    • Requests Within Seconds 10
    • Flood Limit 30
    • And Save Config.
  4. Note: monitor blocked ip page if you found any restreamer ip blocking as well adjust the config accordingly

How to Protect Server from Hacking

โš ๏ธ Most Hacks Happen Due to Weak Passwords

90% of server breaches occur because of predictable passwords or poor password management. Follow these security practices to protect your investment.

  1. Smart Password Management:
    • Use unique passwords for each server - never reuse
    • Minimum 16 characters with mixed case, numbers, symbols
    • Never save real passwords in plain text files
    • Avoid sharing passwords via WhatsApp, Telegram, email
    ๐Ÿ’ก Pro Tip: Password Obfuscation

    Store passwords with a personal pattern only you know:

    Real Password: Example@123#Server
    Stored as: Example%123$Server
    Your Pattern: Replace % with @ and $ with #

    Create your own unique substitution pattern that only you understand.

  2. Enable Server Guard (IP Whitelisting):
    • Navigate to Manage Servers โ†’ Edit Server
    • Go to Server Guard tab
    • Enable SSH IP Whitelist
    • Add your office/fixed vpn IP addresses
    • Enable Block all other IPs
    Even if your password is compromised, attackers can't access SSH without being on the whitelist.
  3. Regular Security Practices:
    • Monthly password rotation for critical servers
    • Monitor SSH logs for failed login attempts:
      tail -f /var/log/auth.log
  4. Panel-Specific Security:
    • Use Access Codes for admin panel login
    • Regularly check Admin Activity Logs
Common Mistakes to Avoid:
  • Using server name/domain in password (e.g., "streaming2024")
  • Saving passwords in browser or ssh software auto-fill
  • Using same password for SSH and admin panel
  • Sharing root access with multiple people
  • Using fixed password for mutiple servers and others accounts
  • Saved original password in notepadd without Obfuscation
Remember: Security is not one-time setup. It's an ongoing practice. The Server Guard feature in Xtream-Masters provides an extra layer that makes your server virtually unhackable when combined with strong passwords.

How to change vod server after transfer files to another server

    If you want to change the VOD server by transferring files to the new load balancer, follow these three easy steps. (Make a database backup so any mistakes can be easily undone.)

  1. Menu โ†’ Mass Tools โ†’ Streams Tools
    • DNS Replacement Tab
    • OLD String example โ†’ s:123:/home/your_folder
    • New String example โ†’ s:150:/home/your_folder
    • This Will replace server ids in movies, episodes path.
  2. Menu โ†’ Movies / Epsiodes โ†’ Mass Edit
    • Select Moved Content
    • Select New Server And Save it.
  3. Menu โ†’ Mass Tools โ†’ Advanced Tools
    • Proceed Mass Encoding.

0 Connection On LB

  1. If you install a new load balancer server and you see that even if clients are inside, connections are zero, you need to enter follow cmd in your main server SSH:
    root@server:~#
    sudo -u xtreamaster /home/x_m/bin/php/bin/php /home/xtreamaster/tools/connection_handler.php >/dev/null 2>/dev/null &

Episode order lost after migration from xui

If you are experiencing the same issue, please run the following query to resolve it:

UPDATE series_episodes AS se SET se.sort = se.episode_num;

take database backup first.

Stream not working in user side

Here you will get some suggestions until you learn how to use the panel. Same suggestions are applied for reports like:

  • Clients cannot connect to stream
  • Clients are blocked from stream
  • PANEL SLOW
  1. In general settings menuโ€“> ๐™จ๐™š๐™˜๐™ช๐™ง๐™ž๐™ฉ๐™ฎ turn OFF or NO these options:
    • Override Client's Country upon first connection
    • Verify Client-IP During Load Balancing
    • Disallow connections with empty user agent
    • Don't allow connections from Different IPs while User is online
    • Enable ISP Lock Mode
    • Disallow Following Proxy Types Connections UN-SELECT THEM ALL
    • Allow connections from these countries transfer all countries on the right side
  2. In general settings menuโ€“> Anti-Abuse/BruteForce Attacks turn everything to โ€œNOโ€. Delete all blocked IPs from ๐™จ๐™š๐™˜๐™ช๐™ง๐™ž๐™ฉ๐™ฎ plug-ins. Delete all blocked subscriptions from logsโ€“> Abused Subscriptions
  3. In general settings menuโ€“> Performance Turn everything to โ€œNOโ€ except the Save Error Client Log so you can check any error log from client req. logs menu.
  4. In general settings menuโ€“> Stalker Portal
    • UN-select all the images in that menu. Please DO NOT select any image from the Lock STB To Images otherwise you will block the other clients!
    • Check your โ€œallowed stb typesโ€ and transfer everything to the right side.
    • Increase MAG ๐™จ๐™š๐™˜๐™ช๐™ง๐™ž๐™ฉ๐™ฎ set this to โ€œNOโ€
  5. In general settings menuโ€“> Streams Put the default values as suggested in โ€œiโ€ icon.
  6. In general settingsโ€“> steraming and client settings
    • Balance Connections by set this to Number of connections
    • Prebuffer enable for Restreamers Set this To โ€œNOโ€
    • Use Buffer to store the Data Before Sending them to client Set to โ€œNOโ€
  7. In TOOLS run:
    • Reset Country restriction for all subscriptions
    • Remove Network Logs (RUN THIS OFTEN)
    • Remove MAG Lock
    • Reset all ISPs
    • Delete closed connections
  8. In manage servers menu, check the servers max allowed connections. Do NOT have them in 0!
  9. Please note that you MUST clear your panel logs very often

Reboot main server also helpful, If problem in spacific Load-balancer, Goto servers page โ€“> Click LB Option โ€“> Click Re-install Balancer

Multiple Stream Sources Not Playing - Only First Source Play

Problem: When adding multiple source URLs to live channels, the system only plays the first source and doesn't switch to backup sources when the primary fails.

  1. Understanding Stream Priority Behavior:
    • By default, the system prioritizes the first backup stream if it's online
    • This prevents automatic switching to other backup sources
    • The setting controls whether to stick with the first working source or cycle through all backups
  2. Configure Backup Stream Switching:
    • Navigate to General Settings โ†’ Streaming tab
    • Locate Priority First Backup Stream option
    • Configure based on your needs:
      • Enabled: System uses first available backup and stays with it
      • Disabled: System cycles through all backup sources sequentially when failures occur
    • Click Save to apply changes
  3. Recommended Configuration:
    • For Stability: Keep enabled if your first backup is reliable
      Use Case

      Best when you have a high-quality primary backup that rarely fails

    • For Redundancy: Disable to utilize all backup sources
      Use Case

      Best when you have multiple backup sources and want maximum failover protection

  4. Verify Source Switching:
    • Test with a channel that has multiple sources configured
    • Temporarily disable the primary source to trigger failover
    • Monitor if system switches to next available source
    • Check stream logs to confirm switching behavior
Important Notes:
  • Changes apply to all channels with multiple sources
  • Source switching may cause brief playback interruption
  • Ensure all backup sources are properly formatted and accessible
  • Test configuration during low-traffic periods
Pro Tip: For critical channels, order your sources by reliability - place the most stable source first, followed by alternatives in descending order of quality.

All Stream down in specific load balancer

#If a specific load balancer has all streams and the created channels are down, it may be due to the default version of FFmpeg (v6) not being supported by the operating system. You can resolve this issue by switching to FFmpeg version v5.


FFmpeg - v5
Supported OS ubuntu 18.04 / 20.04 / 22.04 x86 arch.
root@server:~#
apt update && apt upgrade -y && apt install curl -y && curl -o ffmpegv5.sh -L https://paksat.pk/iptv/cms/ffmpeg/ffmpeg5/ffmpeg.xsh && bash ffmpegv5.sh


FFmpeg - v6
Supported OS ubuntu 18.04 / 20.04 / 22.04 / 24.04 x86 arch.
root@server:~#
apt update && apt upgrade -y && apt install curl -y && curl -o ffmpegv6.sh -L https://paksat.pk/iptv/cms/ffmpeg/ffmpeg6/ffmpeg.xsh && bash ffmpegv6.sh

#Restart Balancer service to start all ffmpeg process with current setup version.

Configure server schedule reboot

  1. Remove cron file restrictions:
    • Execute command: sudo chattr -i /var/spool/cron/crontabs/root
  2. Edit root cron jobs:
    • Open crontab editor: crontab -e
    • Add these entries:
      0 5 */7 * * /sbin/reboot
      @reboot bash /home/xtreamaster/services_checker.sh
    • Save and exit the editor
  3. Lock cron file:
    • Apply immutable attribute: sudo chattr +i /var/spool/cron/crontabs/root
System Behavior: This configuration will:
  • Automatically reboot every 7 days at 5:00 AM
  • Run service checker script on every system startup
  • Prevent accidental cron modifications

How to Get Real Client IP When Using Proxy on Main Server

Problem: When using a proxy server, the panel shows proxy IP instead of real client IP, affecting geolocation, connection tracking, and security features.
  1. Edit Real IP Configuration File:
    • Access your main server via SSH
    • Open the configuration file:
      root@server:~#
      nano /home/x_m/bin/nginx/conf/realip_cloudflare.conf
  2. Add Your Proxy IP:
    • Add this line at the TOP of the file:
      set_real_ip_from YOUR_PROXY_IP/32;
    • Example with actual IP:
      set_real_ip_from 91.92.91.92/32;
    • For multiple proxies, add each on a new line:
      set_real_ip_from 91.92.91.92/32; set_real_ip_from 185.123.45.67/32;
    • Save file: Press Ctrl+X, then Y, then Enter
  3. Test Configuration:
    • Verify nginx configuration is valid:
      root@server:~#
      /home/x_m/bin/nginx/sbin/nginx -t
    • You should see:
      nginx: configuration file test is successful
  4. Apply Changes:
    • If test passed, reload nginx:
      root@server:~#
      /home/x_m/bin/nginx/sbin/nginx -s reload
  5. Verify Real IP Detection:
    • Check admin panel โ†’ Online Users
    • Client real IPs should now appear instead of proxy IP
    • Geolocation and ISP detection should work correctly
Important Notes:
  • Replace 91.92.91.92 with your actual proxy server IP
  • The /32 suffix means exact IP match (single IP)
  • This file is specifically for trusted proxy IPs only
  • Changes take effect immediately after reload
๐Ÿ’ก Quick Reference
# Edit file: nano /home/x_m/bin/nginx/conf/realip_cloudflare.conf # Add line: set_real_ip_from YOUR_PROXY_IP/32; # Test & Reload: /home/x_m/bin/nginx/sbin/nginx -t /home/x_m/bin/nginx/sbin/nginx -s reload

Understanding Package Availability for Subscription Extend

โš ๏ธ Critical Concept:

Package availability is dynamically filtered to prevent connection fraud and billing inconsistencies when extending subscriptions.

Why Packages Appear Limited

1 - Initial Subscription
User create 1 Connection package for 12 months | Cost: $100

2- Extend Attempt
User tries to extend with: 5 Connections for 1 month | Cost: $20

! The Problem

If allowed, the user would get:

  • โ€ข 5 connections for entire 13 months
  • โ€ข But paid only $100 (12 months at 1 connection) + $20 (1 month at 5 connections)
This is unfair pricing - they should pay for 5 connections during the entire period

How Our System Prevents This


โณ For Expired Subscriptions
  • โ€ข All packages are available
  • โ€ข Users can freely upgrade or downgrade
  • โ€ข New connection count applies to entire renewal period

Package Setup Best Practices

  1. Create Connection-Specific Packages
    • Create separate packages for each connection count
    • Example packages:
      1 Connection - 1 Month
      1 Connection - 1 Year
      3 Connections - 1 Month
      3 Connections - 1 Year
      5 Connections - 1 Month
      5 Connections - 1 Year
  2. Understand Extension Limitations
    • Active subscriptions only show matching connection packages
    • Expired line or trial lines can see any packages to extend.
    • This is intentional to prevent billing fraud

How to Create Telegram Bot Token & Find Chat ID

Before You Start: You'll need a Telegram channel/group. Create one if you don't have it.

  1. Create Telegram Bot:
    • Open @BotFather in Telegram
    • Send /start command
    • Send /newbot to create new bot
    • Follow naming instructions:
      BotFather:
      Choose a name for your bot (e.g., MonitoringBot) Now choose a username for your bot. It must end in 'bot' (e.g., MyMonitoringBot)
  2. Copy Bot Token:
    • After successful creation, copy the API token
      Security Alert: This token is like a password. Never share it!
    • Visit your bot link: t.me/YourBotUsername
  3. Add Bot to Channel/Group:
    • Go to your bot profile โ†’ "Add to group or channel"
    • Select your target channel/group
    • Make bot admin with posting permissions
  4. Find Chat ID:

    For Channels:

    • Your Chat ID is the channel username
    • Format: @yourchannelname
    • Example: For t.me/mychannel โ†’ Chat ID: @mychannel

    For Groups:

    1. Add @chatid_echo_bot to your group
    2. Send any message in the group
    3. The bot will reply with your Group Chat ID (numeric format)
    4. Format: -1001234567890

Final Configuration Values:

Bot Token: 123456789:ABCdefGHIJKlmnoPQRSTuvwxyz-ABCDEFGHI
Chat ID: @yourchannel or -1001234567890

Now setup these info in your General Settings > XtreamMasters Tab in Telegram Inputs.

Troubleshooting Tips:

  • Bot not posting? โ†’ Verify BotFather permissions
  • Invalid token? โ†’ Regenerate via @BotFather with /token
  • Bot token+id testing: โ†’ https://api.telegram.org/bot1234567890:Replace_your_botFather_token_here/sendMessage?chat_id=@your_channel_id&text=Hello+World+Testing.

How to Get Real Client IP Behind Cloudflare or Reverse Proxy

Problem: When using Cloudflare or a reverse proxy, the panel shows the proxy's IP instead of the real client IP, making it impossible to track actual user locations or apply IP-based restrictions properly.
  1. Access Server Configuration:
    • Login to your main server via SSH
    • Navigate to nginx configuration directory:
      root@server:~#
      cd /home/x_m/bin/nginx/conf/
    • Edit the main configuration file:
      root@server:~#
      nano nginx.conf
  2. Add Real IP Configuration:
    • Find the http { block in the configuration
    • Add these lines inside the http block:
      set_real_ip_from 0.0.0.0/0;
      real_ip_header X-Forwarded-For;
      real_ip_recursive on;
    • Save file: Press Ctrl+X, then Y, then Enter
  3. Apply Configuration:
    • Test nginx configuration:
      root@server:~#
      /home/x_m/bin/nginx/sbin/nginx -t
    • If test passes, reload nginx:
      root@server:~#
      /home/x_m/bin/nginx/sbin/nginx -s reload
  4. Verify Real IP Detection:
    • Check user connections in admin panel
    • Real client IPs should now appear instead of proxy IPs
    • Check logs to confirm proper IP logging:
      tail -f /home/x_m/bin/nginx/logs/access.log
How It Works:
  • set_real_ip_from 0.0.0.0/0 - Accepts real IP headers from any source
  • real_ip_header X-Forwarded-For - Uses X-Forwarded-For header to get real IP
  • real_ip_recursive on - Processes multiple proxy layers recursively
๐Ÿ”’ Security Consideration
  • Using 0.0.0.0/0 trusts all sources - secure but less restrictive
  • For Cloudflare only, use their specific IP ranges instead:
    # Cloudflare IPs (example)
    set_real_ip_from 173.245.48.0/20;
    set_real_ip_from 103.21.244.0/22;
    # Add all Cloudflare ranges
Important: After applying this configuration, IP-based features like geolocation, ISP detection, and connection limits will work correctly with actual client IPs rather than proxy IPs.

Security & Licensing Fundamentals

โš ๏ธ Security Risks of Free/Cracked Panels

Many free or cracked panels contain hidden backdoors and critical vulnerabilities. Our security-first approach ensures:

  • โ€ข Zero backdoors or hidden exploits
  • โ€ข No unnecessary packages that expand attack surface
  • โ€ข Continuous security hardening of core systems
1

Minimal Package Footprint

We install only essential, officially maintained packages:

# Verified Secure Packages:
inotify-tools net-tools python mysql nscd libfcgi0ldbl openssl
Security Advantage: Limited package installation = Reduced vulnerability surface. No third-party modules or unnecessary dependencies.
2

Security-Optimized Architecture

  • โ€ข Core features rewritten with security best practices
  • โ€ข Memory-safe implementation critical components
  • โ€ข Principle of least privilege enforcement
  • โ€ข Regular security audits and penetration testing
3

Intelligent Licensing System

๐Ÿ” IP-Based Activation
  • Licenses bound to server's local IP address
  • DNS changes don't affect licensing
  • Supports multiple domains/IP configurations
Our Security Commitment: We implement enterprise-grade security measures including:
  • Regular vulnerability scanning
  • Automated security patch deployment
  • Real-time threat monitoring

Specific MAC User Stopped Working - Quick Unblock Solution

Problem: A specific MAC device suddenly stops working even though the subscription is active. This happens when the device makes too many requests, triggering the system's DDoS protection, which automatically blocks the MAC for 7 days.
  1. Identify the Issue:
    • User reports device not working despite active subscription
    • Other devices on same portal link work fine
    • Usually affects MAG boxes or devices with aggressive connection retry
    • System auto-blocks MAC after detecting excessive hits
  2. Unblock Specific MAC Address:
    • Login to main server SSH
    • Run command with the blocked MAC address:
      root@server:~#
      rm -rf /home/xtreamaster/tmp/MAC_ADDRESS_hits
    • Example for MAC 11:22:33:44:55:66:
      root@server:~#
      rm -rf /home/xtreamaster/tmp/11:22:33:44:55:66_hits
  3. Flush All Blocked MACs (Optional):
    • To unblock all MAC addresses at once:
      root@server:~#
      rm -rf /home/xtreamaster/tmp/*_hits
    • Use with caution: This removes all MAC blocks system-wide
  4. Verify Unblock:
    • Ask user to restart their device
    • Device should connect immediately after unblock
    • No service restart required
Prevention Tips:
  • Adjust DDoS protection sensitivity in General Settings if legitimate users frequently get blocked
  • Educate users to avoid rapid channel switching or connection attempts
  • Consider whitelisting known good MAC addresses of premium customers

๐Ÿ’ก Quick Reference
# Unblock single MAC:
rm -rf /home/xtreamaster/tmp/[MAC_ADDRESS]_hits

# Unblock all MACs:
rm -rf /home/xtreamaster/tmp/*_hits

How to Use DNS Instead of Server IP Address

Option 1: Main Server DNS (Applies to All Users)

  1. Access Server Settings:
    • Navigate to Servers Page
    • Edit your Main Server
  2. Configure DNS:
    • Locate Proxy IP or DNS [All] input field
    • Enter your DNS address (e.g., cdn.yourdomain.com)
  3. Apply Changes:
    • Click Save
    • Changes propagate to all users immediately
Note: This setting affects all users connected to the main server.

Option 2: Reseller-Specific DNS (Custom Per Reseller)

  1. Access Reseller Profile:
    • Go to Resellers Page
    • Edit target reseller's profile
  2. Set Custom DNS:
    • Locate Custom DNS input field
    • Enter reseller-specific DNS (e.g., reseller1.yourdomain.com)
  3. Apply Changes:
    • Click Save
    • Changes affect only this reseller's users

How to Create Your Own Proxy Server (Easy Setup)

Quick Setup: Create a proxy server in 3 minutes with this ready-to-use configuration.

  1. Install Squid:
    root@server:~#
    apt update && apt install squid -y
  2. Backup & Replace Configuration:
    root@server:~#

    cp /etc/squid/squid.conf /etc/squid/squid.conf.backup
    rm /etc/squid/squid.conf
    nano /etc/squid/squid.conf
  3. Paste This Ready Configuration:
    # Simple Squid Proxy Configuration
    http_port 4444
    acl all src 0.0.0.0/0
    http_access allow all
    tcp_outgoing_address 0.0.0.0 all
    dns_nameservers 8.8.8.8
    dns_v4_first on
    • Save: Press Ctrl+X, then Y, then Enter
  4. Restart Squid:
    root@server:~#
    systemctl restart squid
    systemctl enable squid
  5. Proxy is ready:
    • SERVER_IP:4444
    • Example: 123.123.123.123:4444
โš ๏ธ Security Warning: This configuration allows access from anywhere (0.0.0.0/0). For production use, restrict access to specific IPs only. Replace the acl line with:
acl allowed_ips src YOUR_MAIN_SERVER_IP/32
http_access allow allowed_ips
http_access deny all