HackingGate https://hackinggate.com/blog To dream and to build, To fail and to succeed. en-us [email protected] (Tong) [email protected] (Tong) Sun, 23 Mar 2025 00:00:00 GMT https://hackinggate.com/blog/hosting-multiple-web-servers-behind-a-single-ip-address Hosting Multiple Web Servers Behind a Single IP Address https://hackinggate.com/blog/hosting-multiple-web-servers-behind-a-single-ip-address A comprehensive guide to hosting multiple web services on the same port of the same IPv4 address using a reverse proxy, managing SSL certificates, and overcoming common home-hosting challenges. Sun, 23 Mar 2025 00:00:00 GMT [email protected] (Tong) Networkweb-hostingreverse-proxySSLself-hostingHAProxyNginx https://hackinggate.com/blog/forwarding-github-webhook-to-jenkins-behind-cf-tunnel-using-cf-worker Forwarding GitHub webhook to Jenkins behind Cloudflare Tunnel using Cloudflare Worker https://hackinggate.com/blog/forwarding-github-webhook-to-jenkins-behind-cf-tunnel-using-cf-worker How to set up a Cloudflare Worker to forward GitHub webhooks to a Jenkins server behind Cloudflare Tunnel, enabling automatic builds without exposing Jenkins to the internet. Thu, 01 Feb 2024 00:00:00 GMT [email protected] (Tong) CloudflareJenkinsGitHubWebhookCloudflareTunnelCloudflareWorker https://hackinggate.com/blog/using-jenkins-to-auto-deploy-on-raspberrypi Using Jenkins to auto deploy webservices on Raspberry Pi with Docker https://hackinggate.com/blog/using-jenkins-to-auto-deploy-on-raspberrypi Setting up Jenkins on a Raspberry Pi for continuous integration and deployment, automating the build and deployment process for web applications with practical configuration examples. Tue, 30 Jan 2024 00:00:00 GMT [email protected] (Tong) RaspberryPiJenkinsDocker https://hackinggate.com/blog/terraforming-existing-cloudflare-configuration Terraforming Existing Cloudflare Configuration https://hackinggate.com/blog/terraforming-existing-cloudflare-configuration A guide to importing and managing existing Cloudflare configurations using Terraform, covering DNS records, tunnels, and access settings for streamlined infrastructure management. Sat, 04 Nov 2023 00:00:00 GMT [email protected] (Tong) TerraformCloudflareIaCDNS https://hackinggate.com/blog/my-gift-a-self-reflecting-journey My Gift - A self-reflecting journey https://hackinggate.com/blog/my-gift-a-self-reflecting-journey A personal reflection on professional growth, challenges overcome, and lessons learned throughout a software engineering career, with insights on continuous self-improvement and embracing change. Fri, 27 Oct 2023 00:00:00 GMT [email protected] (Tong) GiftSelf-reflecting https://hackinggate.com/blog/persisting-real-time-user-data-in-a-golang-project Persisting Real-Time User Data in a Golang Project https://hackinggate.com/blog/persisting-real-time-user-data-in-a-golang-project Techniques for persisting real-time user data in Go applications, addressing concurrency challenges, data consistency, and efficient storage solutions for modern web applications. Sun, 01 Oct 2023 00:00:00 GMT [email protected] (Tong) GolangVPNDeltaDatabaseTickerGinJSONSwift https://hackinggate.com/blog/build-openwrt-22-03-for-tl-wr703n-with-16m-flash Build OpenWrt 22.03 for TL-WR703N with 16m flash https://hackinggate.com/blog/build-openwrt-22-03-for-tl-wr703n-with-16m-flash A guide to building OpenWrt 22.03 for TL-WR703N routers with 16MB flash, including source code modifications, build configuration, and installation instructions. Sat, 30 Sep 2023 00:00:00 GMT [email protected] (Tong) OpenWrttl-wr703nath79ar71xx16mmakebuild https://hackinggate.com/blog/using-cloudflare-zero-trust-to-expose-services Using Cloudflare Zero Trust to expose services https://hackinggate.com/blog/using-cloudflare-zero-trust-to-expose-services A practical guide to using Cloudflare Zero Trust and Cloudflare Tunnels to securely expose home services like SSH and HTTP to the internet, with step-by-step instructions for authentication setup and access configuration. Fri, 29 Sep 2023 00:00:00 GMT [email protected] (Tong) CloudflareZero Trust NetworkSSHHTTP https://hackinggate.com/blog/the-site-is-now-on-nextjs-and-tailwind The site is now on Next.js and Tailwind https://hackinggate.com/blog/the-site-is-now-on-nextjs-and-tailwind A detailed explanation of migrating from Jekyll to Next.js and Tailwind CSS, with insights on hosting migration from GitLab Pages to Cloudflare Pages, open-source collaboration, and privacy-focused analytics implementation. Thu, 28 Sep 2023 00:00:00 GMT [email protected] (Tong) Next.jsTailwindCloudflare PagesCloudflare CDNGitHubumamigiscus https://hackinggate.com/blog/setup-your-fancy-terminal Setup your fancy terminal https://hackinggate.com/blog/setup-your-fancy-terminal A guide to setting up a stylish and efficient terminal with Zsh, Oh My Zsh plugins, Starship prompt, and Nerd Fonts, complete with instructions for both macOS and Ubuntu. Thu, 26 Jan 2023 00:00:00 GMT [email protected] (Tong) zshoh-my-zshstarshipmacOSUbuntu https://hackinggate.com/blog/moving-to-new-yubikeys Moving to new Yubikeys https://hackinggate.com/blog/moving-to-new-yubikeys A guide to migrating GPG keys, FIDO U2F configurations, and other security credentials when switching to new YubiKeys, ensuring secure and smooth transition without compromising security. Sun, 05 Dec 2021 00:00:00 GMT [email protected] (Tong) YubikeyOpenGPGOTP https://hackinggate.com/blog/network-layer-ip-address-blocking Network Layer IP Address Blocking https://hackinggate.com/blog/network-layer-ip-address-blocking Implementing effective IP address blocking at the network layer using iptables and other tools, with strategies for protecting services from malicious traffic and unauthorized access attempts. Sun, 15 Aug 2021 00:00:00 GMT [email protected] (Tong) NetworkIPDNSOpenWrtPi-HoleWireGuard https://hackinggate.com/blog/started-to-learn-russian Started to learn Russian https://hackinggate.com/blog/started-to-learn-russian An introductory guide to learning Russian that covers the Cyrillic alphabet, addresses pronunciation challenges, and provides essential resources for embracing Russian language and culture. Sun, 28 Mar 2021 00:00:00 GMT [email protected] (Tong) languageRussian https://hackinggate.com/blog/using-aircrack-ng-with-rtl8814au Using Aircrack-ng with RTL8814AU https://hackinggate.com/blog/using-aircrack-ng-with-rtl8814au Setting up and using Aircrack-ng wireless security tools with the RTL8814AU chipset on Linux, including driver installation, monitor mode configuration, and practical wireless testing applications. Sun, 28 Jul 2019 00:00:00 GMT [email protected] (Tong) Airmon-ngAircrack-ngRTL8814AURTL8812AUWi-FiKali LinuxRaspberry PiARM https://hackinggate.com/blog/a-pdf-reader-app-for-iOS-11 PDF Reader https://hackinggate.com/blog/a-pdf-reader-app-for-iOS-11 A PDF Reader app for iOS 11 with support for Right-to-Left reading mode for Arabic and vertical CJK text, along with iCloud sync for remembering the last viewed page across devices. Fri, 12 Jul 2019 00:00:00 GMT [email protected] (Tong) PDFreaderprojectiOSlocalizationRTLCJK https://hackinggate.com/blog/gnu-linux-tar-command-cheat-sheet GNU/Linux Tar Command Cheat Sheet https://hackinggate.com/blog/gnu-linux-tar-command-cheat-sheet A comprehensive cheat sheet for the GNU/Linux tar command, covering essential options for archiving and compression operations with gzip, bzip2, and xz formats, with practical examples for both basic and advanced usage. Wed, 10 Jul 2019 00:00:00 GMT [email protected] (Tong) TarGNULinuxArchiveCompressgzipbzip2xz https://hackinggate.com/blog/using-gpg-to-encrypt-messages Using GPG to Encrypt Messages https://hackinggate.com/blog/using-gpg-to-encrypt-messages A practical guide to using GNU Privacy Guard (GPG) for encrypting and signing messages, managing keys, and protecting sensitive communications in an increasingly privacy-conscious digital world. Tue, 09 Jul 2019 00:00:00 GMT [email protected] (Tong) GPGPGPEncryptionSecurityGitHubKeybaseKey ServerPub KeyPrivate KeySSHGitLinux https://hackinggate.com/blog/upgrade-to-raspbian-buster-debian-10-for-raspberry-pi Upgrade to Raspbian Buster (Debian 10) for Raspberry Pi https://hackinggate.com/blog/upgrade-to-raspbian-buster-debian-10-for-raspberry-pi A step-by-step guide to upgrading Raspberry Pi systems to Raspbian Buster (Debian 10), including preparation, the upgrade process, and post-upgrade configuration to ensure a smooth transition. Mon, 24 Jun 2019 00:00:00 GMT [email protected] (Tong) Raspberry PiRaspbianDebianBusterLinuxmacOSSSHDDNSCloudflare https://hackinggate.com/blog/apps-fail-to-get-wi-fi-info-on-ios-13 Apps Fail to Get Wi-Fi Info on iOS 13 https://hackinggate.com/blog/apps-fail-to-get-wi-fi-info-on-ios-13 How iOS 13 changes Wi-Fi information access requiring location permissions, affecting apps like Seven-Eleven Multicopy, and a solution for developers to adapt to these privacy changes. Wed, 12 Jun 2019 00:00:00 GMT [email protected] (Tong) iOS 13Wi-FiPrivacyLocationiOS https://hackinggate.com/blog/inspect-the-view-hierarchy-of-any-ios-apps-on-ios-12 Inspect the View Hierarchy of Any iOS Apps in 2019 https://hackinggate.com/blog/inspect-the-view-hierarchy-of-any-ios-apps-on-ios-12 How to inspect and explore the view hierarchy of any iOS application on iOS 12 using Reveal, a powerful tool for UI debugging without requiring source code access. Tue, 11 Jun 2019 00:00:00 GMT [email protected] (Tong) iOSRevealJailbreakiOS 12 https://hackinggate.com/blog/resign-ipas-with-fastlane-for-jailbreak Resign IPAs with Fastlane for Jailbreak https://hackinggate.com/blog/resign-ipas-with-fastlane-for-jailbreak A comprehensive guide to resigning iOS IPA files using Fastlane for jailbreaking devices, covering certificate creation, provisioning, app modification, and installation. Mon, 10 Jun 2019 00:00:00 GMT [email protected] (Tong) IPAJailbreakiOSfastlaneXcodeAppleDeveloperCertificateProvisioning ProfileApp IDApple Configurator 2UndecimusElectra https://hackinggate.com/blog/deploy-jekyll-blog-on-gitlab-pages-with-cloudflare-origin-ca Deploy Jekyll blog on GitLab Pages with Cloudflare Origin CA https://hackinggate.com/blog/deploy-jekyll-blog-on-gitlab-pages-with-cloudflare-origin-ca A guide to migrating from GitHub Pages to GitLab Pages with Cloudflare Origin CA certificates for end-to-end encryption, overcoming GitHub Pages limitations with custom certificates and GitLab CI. Sun, 09 Jun 2019 00:00:00 GMT [email protected] (Tong) JekyllGitLabCloudflare https://hackinggate.com/blog/macos-mojave-s-dark-mode-for-jekyll-default-theme-minima macOS Mojave's Dark Mode for Jekyll default theme minima https://hackinggate.com/blog/macos-mojave-s-dark-mode-for-jekyll-default-theme-minima Implementing macOS Mojave's Dark Mode support for Jekyll sites using the Minima theme, with CSS customizations that respect the user's system preference for a better reading experience. Sun, 31 Mar 2019 00:00:00 GMT [email protected] (Tong) macOSMojaveDark ModeJekyllminima https://hackinggate.com/blog/started-to-learn-korean Started to learn Korean https://hackinggate.com/blog/started-to-learn-korean An introduction to the Korean language (Hangul), explaining its alphabet structure, pronunciation rules, and basic concepts for beginners learning Korean, with insights on vowel and consonant combinations. Wed, 24 Jan 2018 00:00:00 GMT [email protected] (Tong) languageKorean https://hackinggate.com/blog/how-to-download-xcode-with-aria2c How to download Xcode with aria2c https://hackinggate.com/blog/how-to-download-xcode-with-aria2c Using aria2c to download Xcode faster and more reliably than Apple's default download methods, with step-by-step instructions and performance optimization tips for developers. Thu, 01 Oct 2015 00:00:00 GMT [email protected] (Tong) Xcodearia2MacAppleCookie https://hackinggate.com/blog/helloworld-docker-on-osx-without-boot2docker Helloworld docker on OS X without boot2docker https://hackinggate.com/blog/helloworld-docker-on-osx-without-boot2docker Running Docker containers on macOS without Boot2Docker, demonstrating a simpler approach to containerization on OS X with a Hello World example and step-by-step configuration. Wed, 16 Sep 2015 00:00:00 GMT [email protected] (Tong) osxlinuxdockervirtualboxboot2dockerdocker-machine https://hackinggate.com/blog/xcode-project-build-number-use-svn-revision Xcode project build number use svn revision https://hackinggate.com/blog/xcode-project-build-number-use-svn-revision How to automatically set your Xcode project's build number using SVN revision numbers, ensuring consistent version tracking and simplifying the iOS app release management process. Thu, 03 Sep 2015 00:00:00 GMT [email protected] (Tong) XcodeSVNbuild numberscript https://hackinggate.com/blog/remap-keys-in-os-x-tutorial-for-emacs-lovers Remap keys in OS X tutorial for Emacs lovers https://hackinggate.com/blog/remap-keys-in-os-x-tutorial-for-emacs-lovers A comprehensive guide to remapping keyboard keys in macOS for Emacs users, improving productivity with custom key bindings and modifiers that provide a more ergonomic editing experience. Mon, 31 Aug 2015 00:00:00 GMT [email protected] (Tong) osxemacskeybinding