Skip to content

Instantly share code, notes, and snippets.

View ph33nx's full-sized avatar
♠️

ABHI ph33nx

♠️
  • New Delhi
  • 14:36 (UTC +05:30)
View GitHub Profile
@ph33nx
ph33nx / wp-update.sh
Last active April 8, 2024 13:46
Wordpress Automated Themes, Plugins & Core Updates - Bash Script - Run as Cron Job
#!/bin/bash
# This script is designed to update WordPress core, plugins, and themes,
# set correct file permissions, and restart Nginx and PHP-FPM services.
# Update www-data user to the filesystem user of WP.
# !IMP: Make sure WP CLI is installed: https://wp-cli.org/
#
# Original script concept by https://github.com/ph33nx
#
# To schedule this script to run every Thursday at 4 AM, add the following line to your crontab:
@ph33nx
ph33nx / fresh-windows-dev-enviroment.ps1
Last active May 6, 2024 12:23
Setup development environment on Fresh Windows Installation. Run the script in powershell
# On Fresh windows installation, open powershell or terminal and run the script as following:
# powershell.exe -executionpolicy bypass -file .\fresh-windows-dev-enviroment.ps1
winget install -e --id Git.Git
winget install -e --id GitHub.GitLFS
winget install -e --id Microsoft.VisualStudioCode
winget install -e --id OpenJS.NodeJS.LTS # NodeJS LTS
winget install -e --id Python.Python.3.10 # Python 3.10
winget install -e --id Microsoft.DotNet.SDK.8 # DotNet 8
winget install -e --id GoLang.Go # Go
winget install -e --id Github.GithubDesktop
@ph33nx
ph33nx / delete_macos_files.ps1
Created February 11, 2024 19:58
Delete hidden MacOS files on Windows using Powershell Script
# Get the current directory
$folder = Get-Location
# Delete hidden files recursively based on pattern
Get-ChildItem -Path $folder -Recurse -Force -File | Where-Object { $_.Name -like "._*" } | ForEach-Object {
# Remove any file attributes
Set-ItemProperty -Path $_.FullName -Name Attributes -Value 0
# Attempt to delete the file
Remove-Item -Path $_.FullName -Force
}
@ph33nx
ph33nx / mac_dev_env.sh
Last active March 9, 2024 12:30
Fresh Mac OS Development Environment setup - bash script
#!/bin/bash
# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
brew analytics off
@ph33nx
ph33nx / gist:a663ddc7d69bb2f6ae04e0ec76b217c2
Last active November 8, 2023 09:42
LEMP stack on Ubuntu 22.04 (2023)
#!/bin/bash
# This script is meant to be run on a fresh Ubuntu 22.04 installation.
# Tired of manually installing LEMP stack on Ubuntu? This script will do it for you.
# Ensure the script is run as root
if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi
@ph33nx
ph33nx / adobe_exe_firewall_block_windows.bat
Last active May 8, 2024 18:22
Block All Adobe .exe files via Firewall on Windows Using Batch Script | Stop adobe apps to access internet
@REM Author: https://github.com/ph33nx
@REM Description: This script blocks or unblocks Adobe-related executables in Windows Firewall.
@REM Usage:
@REM - To block executables: adobe_block.bat
@REM - To unblock (delete) existing rules: adobe_block.bat -delete
@echo off
setlocal enabledelayedexpansion
REM Check if the script should delete existing rules
@ph33nx
ph33nx / windows_firewall_block_exe.bat
Last active May 19, 2023 01:34
Windows Firewall - Block All .Exe's Inside a folder from accessing Internet using batch script | Block all .exe in a folder to access Internet
@REM This batch script loops through all exe's inside a directory and blocks all .exe's inside that folder and its subfolders using windows inbuilt firewall.
@REM IMP: Replace FOLDER_NAME with the folder in which you want all .exe's blocked. or replace the whole url, for ex: C:\Program Files\Adobe
@ setlocal enableextensions
@ cd /d "%~dp0"
@for /R "C:\Program Files\FOLDER_NAME" %%a in (*.exe) do (
netsh advfirewall firewall add rule name="%%~na (Blocked using script)" dir=out program="%%a" action=block
@ph33nx
ph33nx / postgres-daily-backup.sh
Last active April 3, 2023 13:59
Postgres Daily Backup Bash Script + Get Credentials from .env
# This script is used to backup postgresql database to a file
# 1. Keep the backup file for 30 days
# 2. Intended to be run from cron
# 3. Read DB credentials from .env file next to the script
# 4. Restore the backup with the following command in psql
# PGPASSWORD=$DB_SECRET pg_restore -Fc --no-owner -h localhost -p 5432 -U $DB_USERNAME -d $DB_NAME < $BACKUP_FILE_NAME
# cd to the script directory
cd "$(dirname "$0")"
@ph33nx
ph33nx / php.conf
Last active April 26, 2024 12:32
Wordpress/PHP DDOS Protection + Harden PHP on Nginx (2024)
# PHP DDOS Protection + Harden PHP on Nginx (2022)
# Created as per latest security standards
# includes protection against DDOS, SQL injections, Comment spam, Php code injection and more
# 444 is returned in most places as it's the most appropriate response code for hackers.
# Some wordpress url's are also blocked as most bots often hit those urls no matter the site is running on wordpress or not
# ** Created by @ph33nx : https://github.com/ph33nx **
# HOW TO USE:
# Include below line (#12) in all your WordPress Sites server block (/etc/nginx/conf.d/wp_site.conf) for this to take effect
# include snippets/wordpress.conf;
@ph33nx
ph33nx / gist:ba29b38c643baf7abbf83f5e74c532c6
Last active August 28, 2020 21:41
Minimal Desktop Enivronment Installation on Arch Linux
#Install minimal Gnome on Arch
pacman -S gnome-shell nautilus gnome-terminal gnome-tweak-tool gnome-control-center gdm networkmanager gnome-keyring xorg-server xorg-xinit
systemctl start gdm
systemctl enable gdm
sudo systemctl start NetworkManager
sudo systemctl enable NetworkManager