<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jihad Sinnaour</title>
    <description>The latest articles on DEV Community by Jihad Sinnaour (@jakiboy).</description>
    <link>https://dev.to/jakiboy</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F240463%2F9c8b528e-d644-4f78-a0cf-eddca6dbd120.png</url>
      <title>DEV Community: Jihad Sinnaour</title>
      <link>https://dev.to/jakiboy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jakiboy"/>
    <language>en</language>
    <item>
      <title>Apache2 (Optimisations)</title>
      <dc:creator>Jihad Sinnaour</dc:creator>
      <pubDate>Thu, 13 Apr 2023 21:42:15 +0000</pubDate>
      <link>https://dev.to/jakiboy/apache2-optimisations-544o</link>
      <guid>https://dev.to/jakiboy/apache2-optimisations-544o</guid>
      <description>&lt;h2&gt;
  
  
  ⚡ Installation
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Global
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;apache2-utils
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  PHP-FPM
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-fpm
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ⚡ Calculation
&lt;/h2&gt;

&lt;p&gt;(1 CPU cores, 2 GB RAM)&lt;/p&gt;

&lt;h3&gt;
  
  
  Process size
&lt;/h3&gt;

&lt;p&gt;Size per each single process.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;wget https://raw.githubusercontent.com/pixelb/ps_mem/master/ps_mem.py &lt;span class="nt"&gt;-O&lt;/span&gt; usage.py
&lt;span class="nb"&gt;chmod &lt;/span&gt;a+x usage.py
python usage.py
lscpu
top
top &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; &lt;span class="sb"&gt;`&lt;/span&gt;pgrep apache &lt;span class="nt"&gt;-d&lt;/span&gt;&lt;span class="s1"&gt;','&lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;
top &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; &lt;span class="sb"&gt;`&lt;/span&gt;pgrep mariadb &lt;span class="nt"&gt;-d&lt;/span&gt;&lt;span class="s1"&gt;','&lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;
top &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; &lt;span class="sb"&gt;`&lt;/span&gt;pgrep php &lt;span class="nt"&gt;-d&lt;/span&gt;&lt;span class="s1"&gt;','&lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{Process size} = {Used RAM (Item)} / {Process (Item)}

# Apache:
# 50M / 5P
# 10M
# (~ 150)

# PHP-FPM:
# 200M / 5P
# 40M
# (~ 256M)

# MySQL:
# (~ 256M)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  MaxRequestWorkers
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;MaxRequestWorkers = ({Total RAM} - {Used RAM (Kenel, MySQL...)}) / {Process size}
# (2000 - 600) / 50M
# 28M
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  PHP-FPM max-children
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;maxclients = ({Total RAM} - {Used RAM (Kenel, MySQL...)}) / {Process size}
# (2000 - 600) / 50M
# 28M
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ⚡ Configuration
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Global
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2enmod deflate &lt;span class="c"&gt;# GZIP&lt;/span&gt;
a2dismod mod_ruby &lt;span class="c"&gt;# Unused&lt;/span&gt;
a2dismod mod_perl &lt;span class="c"&gt;# Unused&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/apache2/apache2.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Timeout 120
KeepAlive On
MaxKeepAliveRequests 500
KeepAliveTimeout 3
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Cache
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2enmod cache
a2enmod cache_disk
a2enmod expires
a2enmod headers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/apache2/sites-available/{domain}.{tld}.conf&lt;/em&gt;&lt;br&gt;&lt;br&gt;
@ &lt;em&gt;/etc/apache2/sites-available/000-default.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;IfModule mod_disk_cache.c&amp;gt;
    CacheQuickHandler off
    CacheLock on
    CacheLockPath /tmp/mod_cache-lock
    CacheLockMaxAge 5
    CacheIgnoreHeaders Set-Cookie
    CacheEnable disk
    CacheHeader on
    CacheDefaultExpire 800
    CacheMaxExpire 64000
    CacheIgnoreNoLastMod On
    ExpiresActive on
    ExpiresDefault A300
&amp;lt;/IfModule&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  MPM (Multi-Processing)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2dismod mpm_prefork
a2dismod mpm_event
a2enmod mpm_worker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/apache2/mods-available/mpm_worker.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;IfModule mpm_worker_module&amp;gt;
    StartServers 1 # {CORES}
    ServerLimit 150 # {RAM}
    MinSpareThreads 25
    MaxSpareThreads 75
    ThreadLimit 64
    ThreadsPerChild 25
    MaxRequestWorkers 150 # {RAM}
    MaxConnectionsPerChild 1000
&amp;lt;/IfModule&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  PHP-FPM
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2enmod proxy_fcgi setenvif
a2enconf php7.4-fpm
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/php/7.4/fpm/pool.d/&lt;a href="http://www.conf" rel="noopener noreferrer"&gt;www.conf&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pm = dynamic
pm.max_children         256 # ({Total RAM} - {Used RAM (Kenel, MySQL...)}) / {Process size}
pm.start_servers        4 # ({CORES} * 4)
pm.min_spare_servers    2 # ({CORES} * 2)
pm.max_spare_servers    4 # ({CORES} * 4)
pm.max_requests         1000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Restart
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;service apache2 restart
service php7.4-fpm restart
systemctl start apache-htcacheclean
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Test
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;PHP-FPM&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;php-fpm7.4 &lt;span class="nt"&gt;-t&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Cache&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;ls&lt;/span&gt; &lt;span class="nt"&gt;-la&lt;/span&gt; /var/cache/apache2/mod_cache_disk/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;ApacheBench&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ab &lt;span class="nt"&gt;-n&lt;/span&gt; 1000 &lt;span class="nt"&gt;-c&lt;/span&gt; 100 &lt;span class="nt"&gt;-k&lt;/span&gt; &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Accept-Encoding: gzip, deflate"&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt;http[s]://]hostname[:port]/path
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Authors:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Jihad Sinnaour&lt;/strong&gt; - &lt;a href="https://github.com/Jakiboy" rel="noopener noreferrer"&gt;Jakiboy&lt;/a&gt; (&lt;em&gt;Initial work&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ⭐ Support:
&lt;/h2&gt;

&lt;p&gt;Please give it a Star if you like the project.&lt;/p&gt;

</description>
      <category>host</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Setup a LAMP (Debian 11) - Optimized method</title>
      <dc:creator>Jihad Sinnaour</dc:creator>
      <pubDate>Thu, 13 Apr 2023 21:39:37 +0000</pubDate>
      <link>https://dev.to/jakiboy/setup-a-lamp-debian-11-optimized-method-le1</link>
      <guid>https://dev.to/jakiboy/setup-a-lamp-debian-11-optimized-method-le1</guid>
      <description>&lt;h2&gt;
  
  
  ⚡ Update / Upgrade
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Update source:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/apt/sources.list&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;deb http://deb.debian.org/debian/ {dist} main
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Update libs:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get update
apt-get upgrade
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Update system:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get upgrade &lt;span class="nt"&gt;--without-new-pkgs&lt;/span&gt;
apt-get full-upgrade
reboot
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Fix APT :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-fr&lt;/span&gt; /var/lib/apt/lists/&lt;span class="k"&gt;*&lt;/span&gt;
apt-get &lt;span class="nt"&gt;--purge&lt;/span&gt; autoremove
apt-get clean all
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Check:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;uname&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt;
lsb_release &lt;span class="nt"&gt;-a&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup Access (SSH/SFTP)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;openssh-server
&lt;span class="c"&gt;# apt-get install ssh (client/server)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Change root password:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;passwd root
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Add SSH user:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;adduser &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Apply SUDO on SSH user:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;usermod &lt;span class="nt"&gt;-aG&lt;/span&gt; &lt;span class="nb"&gt;sudo&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/sudoers&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{username} ALL=(ALL) ALL
# {username} ALL=(ALL) NOPASSWD:ALL
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Setup SSH/SFTP (CHROOT)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/ssh/sshd_config&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Port {port}
LoginGraceTime 60
PermitRootLogin no
StrictModes yes
MaxAuthTries 6
MaxSessions 3
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Subsystem sftp /usr/lib/openssh/sftp-server (comment)
Subsystem sftp internal-sftp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Match [User|Group] {username|groupname}
        ForceCommand internal-sftp -u 077
        PasswordAuthentication yes
        ChrootDirectory /var/www
        AllowTCPForwarding no
        X11Forwarding no
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Restart:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;sshd &lt;span class="nt"&gt;-t&lt;/span&gt;
systemctl restart sshd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Check:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;tail&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt; /var/log/auth.log
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup Apache Server
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;apache2
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;libapache2-mod-php7.4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2enmod rewrite
a2dissite 000-default
a2dissite default-ssl
a2ensite &lt;span class="o"&gt;{&lt;/span&gt;site&lt;span class="o"&gt;}&lt;/span&gt;
a2dissite &lt;span class="o"&gt;{&lt;/span&gt;site&lt;span class="o"&gt;}&lt;/span&gt;
apache2ctl configtest
service apache2 restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup MySQL Server
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;mariadb-server
mysql_secure_installation
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Add database:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mysql &lt;span class="nt"&gt;-u&lt;/span&gt; root
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CREATE USER '{username}'@'localhost' IDENTIFIED BY '{password}';
GRANT ALL PRIVILEGES ON *.* TO '{username}'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
CREATE DATABASE IF NOT EXISTS {database};
exit;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;service mysql restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Dump:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mysqldump &lt;span class="nt"&gt;-u&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt; –p &lt;span class="o"&gt;{&lt;/span&gt;password&lt;span class="o"&gt;}&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;database&lt;span class="o"&gt;}&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;dump.sql&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup PHP
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4 &lt;span class="o"&gt;(&lt;/span&gt;php7.4-common&lt;span class="o"&gt;)&lt;/span&gt;
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-cli
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-curl
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-intl
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-imagick
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-&lt;span class="o"&gt;{&lt;/span&gt;extension&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Change php version:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2dismod php7.0
a2enmod php7.4
service apache2 restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup PhpMyAdmin
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;phpmyadmin
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/apache2/apache2.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Include /etc/phpmyadmin/apache.conf
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;'Include /etc/phpmyadmin/apache.conf'&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; /etc/apache2/apache2.conf
service apache2 restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup FTP (Optional)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;vsftpd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/vsftpd.conf&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Edit&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;listen=YES
write_enable=YES
chown_uploads=YES
chown_username=www-data
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
local_umask=0022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Add&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;allow_writeable_chroot=YES
chmod_enable=YES
ftp_username=www-data
force_dot_files=YES
max_clients=10
max_per_ip=3
hide_ids=YES
user_config_dir=/etc/vsftpd
file_open_mode=0777
user_sub_token=$USER
vsftpd_log_file=/var/log/vsftpd.log
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; /etc/vsftpd
nano /etc/vsftpd/&lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;local_root=/var/wwwsername}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;service vsftpd restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup DNS Server
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;bind9
service bind9 restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup SMTP
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;postfix mailutils &lt;span class="o"&gt;(&lt;/span&gt;postfix-mysql&lt;span class="o"&gt;)&lt;/span&gt;
service postfix restart
service apache2 restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup TLS/SSL
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;openssl
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;certbot python3-certbot-apache
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;certbot &lt;span class="nt"&gt;--apache&lt;/span&gt;
&lt;span class="c"&gt;# certbot renew (/etc/letsencrypt/renewal)&lt;/span&gt;
&lt;span class="c"&gt;# certbot certonly --cert-name domain.com -d domain.com&lt;/span&gt;
service apache2 restart
crontab &lt;span class="nt"&gt;-e&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;12 3 * * * letsencrypt renew &amp;gt;&amp;gt; /var/log/letsencrypt/renew.log
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;service cron restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup Firewall
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;ufw
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ufw disable
ufw default deny incoming
ufw default allow outgoing
ufw allow 80
ufw allow 443
ufw allow ssh
ufw allow from &lt;span class="o"&gt;{&lt;/span&gt;IPV4&lt;span class="o"&gt;}&lt;/span&gt; to any port &lt;span class="o"&gt;{&lt;/span&gt;port&lt;span class="o"&gt;}&lt;/span&gt;
ufw allow from &lt;span class="o"&gt;{&lt;/span&gt;IPV6&lt;span class="o"&gt;}&lt;/span&gt; to any port &lt;span class="o"&gt;{&lt;/span&gt;port&lt;span class="o"&gt;}&lt;/span&gt;
ufw &lt;span class="nb"&gt;enable&lt;/span&gt;
&lt;span class="c"&gt;# ufw reset&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup Permissions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Add WEB/SFTP user:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;useradd &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Add WEB/SFTP user to www-data Group:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# adduser {username} {group}&lt;/span&gt;
usermod &lt;span class="nt"&gt;-aG&lt;/span&gt; www-data &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;
usermod &lt;span class="nt"&gt;-d&lt;/span&gt; /var/www &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Apply WEB/SFTP directory permissions:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;chown&lt;/span&gt; &lt;span class="nt"&gt;-R&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;:www-data /var/www/
find /var/www &lt;span class="nt"&gt;-type&lt;/span&gt; d &lt;span class="nt"&gt;-exec&lt;/span&gt; &lt;span class="nb"&gt;chmod &lt;/span&gt;755 &lt;span class="o"&gt;{}&lt;/span&gt; &lt;span class="se"&gt;\;&lt;/span&gt;
find /var/www &lt;span class="nt"&gt;-type&lt;/span&gt; f &lt;span class="nt"&gt;-exec&lt;/span&gt; &lt;span class="nb"&gt;chmod &lt;/span&gt;644 &lt;span class="o"&gt;{}&lt;/span&gt; &lt;span class="se"&gt;\;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Change Access Control Lists (Optional):
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;acl
setfacl &lt;span class="nt"&gt;-R&lt;/span&gt; &lt;span class="nt"&gt;-m&lt;/span&gt; g:www-data:rwx /var/www
setfacl &lt;span class="nt"&gt;-R&lt;/span&gt; &lt;span class="nt"&gt;-m&lt;/span&gt; u:&lt;span class="o"&gt;{&lt;/span&gt;username&lt;span class="o"&gt;}&lt;/span&gt;:rwx /var/www
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Change Apache user:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/apache2/envvars&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export APACHE_RUN_USER={username}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;'export APACHE_RUN_USER={username}'&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; /etc/apache2/envvars
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup Redis
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;redis-server
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-redis
apt-get &lt;span class="nb"&gt;install &lt;/span&gt;php7.4-igbinary
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/redis/redis.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# bind 127.0.0.1 ::1 (comment)
maxmemory 1024mb
maxmemory-policy allkeys-lru
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Restart:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;service redis-server restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Test:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;redis-cli
redis-cli FLUSHALL
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup WP-CLI
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
&lt;span class="nb"&gt;chmod &lt;/span&gt;u+x wp-cli.phar
&lt;span class="nb"&gt;mv &lt;/span&gt;wp-cli.phar /usr/local/bin/wp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup GIT
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuration:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git config &lt;span class="nt"&gt;--global&lt;/span&gt; user.name &lt;span class="s2"&gt;"{username}"&lt;/span&gt;
git config &lt;span class="nt"&gt;--global&lt;/span&gt; user.email &lt;span class="s2"&gt;"{email}"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Setup Security
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install Fail2ban:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;fail2ban
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Secure Apache:
&lt;/h3&gt;

&lt;p&gt;@ &lt;em&gt;/etc/apache2/apache2.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Decrease Timeout value
Timeout 60
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/apache2/mods-available/ssl.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Use only TLS, Disable SSLv2, SSLv3
SSLProtocol -all +TLSv1

# Disable Weak Ciphers
SSLCipherSuite HIGH:!MEDIUM:!aNULL:!MD5:!RC4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/apache2/mods-available/userdir.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Limit HTTP Request Methods
allow only GET, POST and HEAD
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;@ &lt;em&gt;/etc/apache2/conf-available/security.conf&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ServerTokens Prod
TraceEnable off
ServerSignature Off
FileETag None
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Set rules for Directory /var/www/html
Options None
AllowOverride All
Order Allow,Deny
Allow from All
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;a2enmod headers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Cookie with HttpOnly and Secure flag
Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure

# Clickjacking Attack Protection
Header always append X-Frame-Options SAMEORIGIN

# XSS Protection
Header set X-XSS-Protection "1; mode=block"

# Enforce secure connections to the server (HSTS)
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"

# MIME sniffing Protection
Header set X-Content-Type-Options: "nosniff"

# Prevent Cross-site scripting and injections
Header set Content-Security-Policy "script-src 'self'; object-src 'self'"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;service apache2 restart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Disable FTP access:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;iptables &lt;span class="nt"&gt;-A&lt;/span&gt; INPUT &lt;span class="nt"&gt;-p&lt;/span&gt; tcp &lt;span class="nt"&gt;--dport&lt;/span&gt; 21 &lt;span class="nt"&gt;-j&lt;/span&gt; DROP
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Tools
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Install:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;net-tools
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Service
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Reset:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;systemctl stop &lt;span class="o"&gt;{&lt;/span&gt;service&lt;span class="o"&gt;}&lt;/span&gt;
systemctl disable &lt;span class="o"&gt;{&lt;/span&gt;service&lt;span class="o"&gt;}&lt;/span&gt;
systemctl unmask &lt;span class="o"&gt;{&lt;/span&gt;service&lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="nb"&gt;rm&lt;/span&gt; /etc/systemd/system/&lt;span class="o"&gt;{&lt;/span&gt;service&lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="nb"&gt;rm&lt;/span&gt; /usr/lib/systemd/system/&lt;span class="o"&gt;{&lt;/span&gt;service&lt;span class="o"&gt;}&lt;/span&gt; 
systemctl daemon-reload
systemctl reset-failed
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Authors:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Jihad Sinnaour&lt;/strong&gt; - &lt;a href="https://github.com/Jakiboy" rel="noopener noreferrer"&gt;Jakiboy&lt;/a&gt; (&lt;em&gt;Initial work&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ⭐ Support:
&lt;/h2&gt;

&lt;p&gt;Please give it a Star if you like the project.&lt;/p&gt;

</description>
      <category>hosts</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>ReVen: a Reverse Engineering Toolkit AIO</title>
      <dc:creator>Jihad Sinnaour</dc:creator>
      <pubDate>Thu, 13 Apr 2023 21:32:07 +0000</pubDate>
      <link>https://dev.to/jakiboy/reven-a-reverse-engineering-toolkit-aio-1obn</link>
      <guid>https://dev.to/jakiboy/reven-a-reverse-engineering-toolkit-aio-1obn</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2FJakiboy%2FReVen%2Fmain%2Fassets%2Flogo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2FJakiboy%2FReVen%2Fmain%2Fassets%2Flogo.png" alt="ReVen" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/Jakiboy/ReVen" rel="noopener noreferrer"&gt;ReVen&lt;/a&gt; is a Reverse Engineering Toolkit AIO built for Security (Penetration testing) &amp;amp; Educational purposes &lt;strong&gt;only&lt;/strong&gt;.&lt;br&gt;
It contains almost everything about RE &lt;em&gt;-At least to begin-&lt;/em&gt; .&lt;br&gt;&lt;br&gt;
ReVen is built to share personal experience (&lt;em&gt;passion&lt;/em&gt;) in RE since &lt;strong&gt;2008&lt;/strong&gt;, it can be useful for new future &lt;strong&gt;Reversers&lt;/strong&gt; / &lt;strong&gt;Developers&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Its also a good Electron boilerplate&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirements
&lt;/h2&gt;

&lt;p&gt;To run ReVen:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Windows 10/11 x64&lt;/strong&gt; &lt;em&gt;-VM recommended-&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ReVen.iso&lt;/strong&gt; &lt;em&gt;-External ReVen packages-&lt;/em&gt; not available in this repository (More than &lt;strong&gt;300&lt;/strong&gt; items).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To build ReVen:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Node.js&lt;/strong&gt; ^24.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Notices
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Reverse Engineering tools are denied by &lt;strong&gt;Antivirus&lt;/strong&gt; (Due to binary patching algorithms, debugging ...etc).&lt;/li&gt;
&lt;li&gt;You should make an &lt;strong&gt;Antivirus&lt;/strong&gt; exception to avoid detection, or use a virtual machine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ReVen.iso&lt;/strong&gt; is automatically downloaded &amp;amp; extracted during installation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ReVen.iso&lt;/strong&gt; includes docs &amp;amp; basic tutorials about RE.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;100% clean&lt;/strong&gt;, &lt;em&gt;-but use it on your own responsibility-&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;90% portable&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Download
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;ReVen AIO&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Download from: &lt;a href="https://github.com/Jakiboy/ReVen/releases" rel="noopener noreferrer"&gt;Releases&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;ReVen Packages&lt;/strong&gt; (&lt;strong&gt;6Go&lt;/strong&gt;)&lt;/p&gt;

&lt;p&gt;Download manually from:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3mot7kZ" rel="noopener noreferrer"&gt;Part 1&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3zRjQVE" rel="noopener noreferrer"&gt;Part 2&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/415MEpp" rel="noopener noreferrer"&gt;Part 3&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3MAQORL" rel="noopener noreferrer"&gt;Part 4&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3mCDiSR" rel="noopener noreferrer"&gt;Part 5&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3odaocI" rel="noopener noreferrer"&gt;Part 6&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3L5HLqV" rel="noopener noreferrer"&gt;Part 7&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/3MAR8jr" rel="noopener noreferrer"&gt;Part 8&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;ReVen Packages &lt;a href="https://bit.ly/406sIRY" rel="noopener noreferrer"&gt;Part 9&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Screenshot
&lt;/h2&gt;

&lt;p&gt;This is how it looks, Built with {heart} using &lt;strong&gt;Electron.js&lt;/strong&gt; + Some legacy {stuff}.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2FJakiboy%2FReVen%2Fmain%2Fassets%2Fscreenshot.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2FJakiboy%2FReVen%2Fmain%2Fassets%2Fscreenshot.png" alt="ReVen AIO" width="800" height="400"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;The App background is the electron DevTools itself&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Install, Run &amp;amp; Build
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;bash global.sh
bash init.sh
bash run.sh
bash build.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Packages
&lt;/h2&gt;

&lt;p&gt;ReVen packages includes:&lt;/p&gt;

&lt;h3&gt;
  
  
  Analysing
&lt;/h3&gt;

&lt;p&gt;Analyse binary executable files (&lt;strong&gt;EXE, DLL, OCX...&lt;/strong&gt;).&lt;/p&gt;

&lt;h4&gt;
  
  
  Binary
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Analyse binary.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;FileAlyzer&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Alternate DLL Analyzer&lt;/li&gt;
&lt;li&gt;ExeInfo (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Compilation
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Analyse PE compilation.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Detect It Easy (DiE)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Nauz File Detector (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Language 2000 (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;PE Detective (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Signature Explorer (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Bytecode (p-code)
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Object code converted by interpreter into binary machine code to be read by CPU.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bytecode Viewer (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Packaging
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Analyse PE packaging / protection.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Exeinfo PE&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;PEiD (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ARiD (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;UPX-Analyser (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  System
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Analyse system files, processing &amp;amp; memory.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HijackThis&lt;/li&gt;
&lt;li&gt;SearchMyFiles&lt;/li&gt;
&lt;li&gt;Process Monitor&lt;/li&gt;
&lt;li&gt;API Monitor&lt;/li&gt;
&lt;li&gt;RegDLLView&lt;/li&gt;
&lt;li&gt;WinObj&lt;/li&gt;
&lt;li&gt;WinID&lt;/li&gt;
&lt;li&gt;HeapMemView&lt;/li&gt;
&lt;li&gt;CPU Stress&lt;/li&gt;
&lt;li&gt;DeviceIOView&lt;/li&gt;
&lt;li&gt;Autoruns&lt;/li&gt;
&lt;li&gt;Fiddler&lt;/li&gt;
&lt;li&gt;Wireshark (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DLL Function Viewer (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Process Explorer (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Process Hacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Zero Dump (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;GDIView (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;grepWin (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Calculating
&lt;/h3&gt;

&lt;p&gt;Mathematical &amp;amp; reverse calculating.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Alternate Math Solver&lt;/li&gt;
&lt;li&gt;Reverser Calculator&lt;/li&gt;
&lt;li&gt;Hex-Dec&lt;/li&gt;
&lt;li&gt;JMP Calculator&lt;/li&gt;
&lt;li&gt;XOpcodeCalc (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Jump to Hex (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Hash Calculator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Base Calculator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Base Converter (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Converting
&lt;/h3&gt;

&lt;p&gt;Convert binary files.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;BAT to EXE&lt;/li&gt;
&lt;li&gt;PS1 to EXE&lt;/li&gt;
&lt;li&gt;VBS to EXE&lt;/li&gt;
&lt;li&gt;JAR to EXE&lt;/li&gt;
&lt;li&gt;PNG to ICO&lt;/li&gt;
&lt;li&gt;Audio Video to EXE&lt;/li&gt;
&lt;li&gt;RapidEXE (PHP - EXE) - CLI&lt;/li&gt;
&lt;li&gt;RegConvert (REG - EXE)&lt;/li&gt;
&lt;li&gt;vbstoexe - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Decompiling
&lt;/h3&gt;

&lt;p&gt;Revert the process of compilation. Transforming binary program file into a &lt;strong&gt;structured higher-level language&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;BinaryNinja&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;ILSpy (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;dotPeek (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;.NET Reflector (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Java Decompiler (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;JByteMod (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;VB Decompiler (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DJ Java Decompiler (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Dis# Net Decompiler (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Disassembling
&lt;/h3&gt;

&lt;p&gt;Transforming machine code into a human readable mnemonic representation (&lt;strong&gt;Assembly language&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ghidra&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;IDA (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Capstone - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Delphi Disassembler (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;bddisasm - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Disasm (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Refractor (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RadASM (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Win32Dasm (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Debugging
&lt;/h3&gt;

&lt;p&gt;View and change the running state of a program. (&lt;strong&gt;Disassembling, Decompiling, Hexing&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;x64dbg&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Immunity Debugger (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;dnSpy (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;OllyDbg (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Cutter (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Radare2 - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Hexing
&lt;/h3&gt;

&lt;p&gt;Edit binary &lt;strong&gt;hexadecimal values&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ImHex&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;HEX Editor (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Hiew (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Rebuilding
&lt;/h3&gt;

&lt;p&gt;Rebuild PE import table (&lt;strong&gt;Imports Reconstructor&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Scylla&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;DLL Packager&lt;/li&gt;
&lt;li&gt;ImpREC (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Decoding
&lt;/h3&gt;

&lt;p&gt;Decode hash.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ophcrack&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;CyberChef (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Armadillo KeyTool (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Keygener Assistant (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;SND Reverse Tool (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Hash Identifier (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RSA-Tool 2 (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RSATool (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RSABox (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;MD5 Toolbox (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Comparing
&lt;/h3&gt;

&lt;p&gt;Binary compare.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;REPT file compare&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;File CompareR (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ReloX (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;SideBySide (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;SignMan (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Editing
&lt;/h3&gt;

&lt;p&gt;Binary edit (&lt;strong&gt;EXE, RES, DLL&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Resource Hacker&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;PPEE (Professional PE Explorer)&lt;/li&gt;
&lt;li&gt;PE Lab&lt;/li&gt;
&lt;li&gt;XPEViewer&lt;/li&gt;
&lt;li&gt;XELFViewer&lt;/li&gt;
&lt;li&gt;WinMerge&lt;/li&gt;
&lt;li&gt;DLL Injector Slait&lt;/li&gt;
&lt;li&gt;Codejock Skin Builder&lt;/li&gt;
&lt;li&gt;Codejock Resource Editor&lt;/li&gt;
&lt;li&gt;Codejock MarkupPad&lt;/li&gt;
&lt;li&gt;Codejock Command Bars Designer&lt;/li&gt;
&lt;li&gt;Notepad++&lt;/li&gt;
&lt;li&gt;DLL Addr&amp;amp;Func Converter (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DLL Injector (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DLL Loader (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DLL Rebaser (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ResEdit (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;CFF Explorer (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Resource Builder (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Splash Injector (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Far Manager (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;KDiff3 (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;IID King (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Cheat Engine (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Extracting
&lt;/h3&gt;

&lt;p&gt;Binary extracting (&lt;strong&gt;EXE, RES, DLL&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;UniExtract2&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;DLL Export Viewer&lt;/li&gt;
&lt;li&gt;RegFileExport&lt;/li&gt;
&lt;li&gt;ResourcesExtract (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DotNetResExtract (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RegFromApp (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Inno Extractor (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Innoextract - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Innounp - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;MSI Unpacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Fearless MSI Unpacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;LessMSI - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Mmextract - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ExeDumper (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Table Extractor (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Games&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dragon UnPACKer&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Unity Assets Bundle Extractor&lt;/li&gt;
&lt;li&gt;Ninja Ripper&lt;/li&gt;
&lt;li&gt;3D Ripper DX (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;QuickBMS (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Unity Asset Editor (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DevX Unity Unpacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Unity Studio (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;UnityEx (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;uTinyRipper (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Unpacking
&lt;/h3&gt;

&lt;p&gt;Unpack &amp;amp; remove binary protection (&lt;strong&gt;EXE, DLL&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;XVolkolak&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;.NET Reactor Slayer&lt;/li&gt;
&lt;li&gt;ConfuserEx Unpacker - CLI&lt;/li&gt;
&lt;li&gt;ILProtector Unpacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;de4dot (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RL!deUPX (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RL!deASPack (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RL!dePacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;GUnPacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ASPack Unpacker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;IsXunpack (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Unpacker ExeCryptor (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Universal Unprotector (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Patching
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Patcher
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Generate patching program using binary compare.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;dUP 2&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;AT4RE Patcher (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;CodeFusion (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;uPPP (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Apatch (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Inno Setup XDELTA Patch Maker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;PEiD Patch Maker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Graphical Patch Maker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Loader
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Build binary patch loader.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Loader Generator&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Abel Loader Generator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Keygen
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Build Key generator.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;REPT Keygen Maker&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Skin
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Build patcher skin.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dup2AP Skin Converter&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Image Flipper&lt;/li&gt;
&lt;li&gt;Skin Builder&lt;/li&gt;
&lt;li&gt;Skin Extractor&lt;/li&gt;
&lt;li&gt;uPPP2AP Skin Converter (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;RGNerator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Release
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Build patcher release file.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Release Builder&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;DizView&lt;/li&gt;
&lt;li&gt;Fast Cracktro Maker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;mRelease Builder (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;NFO Maker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;NFO Scroller (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;NFO View (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;NFO Viewer 2 (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  ASCII
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Build patcher release ASCII.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ascgen&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;1337 Converter (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ASCII Art studio (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ASCII Converter (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ASCII Generator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ASCII Table (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Magic ASCII Pic (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Sound
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Build patcher sound (MX).&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;FastTracker 2&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;OpenMPT (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;MilkyTracker (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ModPlug Player (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;ChipRip (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Bypassing
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Trial
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Trial reset.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;RunAsDate&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;DateHack (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Trial-Reset (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  System
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Bypassing system.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;RunFromProcess&lt;/li&gt;
&lt;li&gt;ScyllaHide&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  Assembling
&lt;/h3&gt;

&lt;p&gt;Assembling &lt;strong&gt;Machine code&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Flat assembler (FASM)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Programming
&lt;/h3&gt;

&lt;p&gt;Programming tools (&lt;strong&gt;+Compilator&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;PyScripter&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Embarcadero Dev-C++ (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Dev-C++ (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Small Basic (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Encoding
&lt;/h3&gt;

&lt;p&gt;Data encoding (&lt;strong&gt;Hash&lt;/strong&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;WinHasher&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Alternate Hash-Generator&lt;/li&gt;
&lt;li&gt;PuTTY&lt;/li&gt;
&lt;li&gt;HashMyFiles (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;XOR (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Base64 - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;MD5 - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;SHA1 - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Dissecting RC4 Algorithm (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;DSS-DSA Generator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;gRn-Rsa-Donkey (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Packing
&lt;/h3&gt;

&lt;p&gt;Executable packing.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;UPX&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;ConfuserEx&lt;/li&gt;
&lt;li&gt;Alternate EXE Packer&lt;/li&gt;
&lt;li&gt;Amber (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Testing
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Simulating
&lt;/h4&gt;

&lt;p&gt;Circuit / Logical simulation.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fritzing&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Arduino Simulator&lt;/li&gt;
&lt;li&gt;Arduino CLI&lt;/li&gt;
&lt;li&gt;PICSimLab (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;UnoArduSim (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Dia (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Logisim (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;SimulIDE (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;Circuit Simulator (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Sandboxing
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Executables safe testing.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sandboxie Plus&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Sandboxie Classic (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  Mobile
&lt;/h3&gt;

&lt;p&gt;Mobile application reverse.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;APK Editor Studio&lt;/li&gt;
&lt;li&gt;OTP Extractor&lt;/li&gt;
&lt;li&gt;WhatsApp Extractor (CLI)&lt;/li&gt;
&lt;li&gt;WhatsApp Viewer&lt;/li&gt;
&lt;li&gt;Apktool - CLI (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;APK Protect (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;XAPK Detector (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;APK Multi-Tool (&lt;em&gt;Archived&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Authors:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Jihad Sinnaour&lt;/strong&gt; - &lt;a href="https://github.com/Jakiboy" rel="noopener noreferrer"&gt;Jakiboy&lt;/a&gt; (&lt;em&gt;Initial work&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ⭐ Support:
&lt;/h2&gt;

&lt;p&gt;Please give it a Star if you like the project.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>javascript</category>
      <category>security</category>
    </item>
  </channel>
</rss>
