Proxy Through SSH Tunnel

For occasional VPN or proxy, you do not always need to pay for a reliable VPN service.
In many workplaces or restricted networks, VPN services are blocked altogether. However, one port is often left open – the SSH port (port 22). With this, you can tunnel your traffic securely and bypass content filtering, geo-restrictions, or just mask your IP using a simple SSH tunnel.

In this post, we’ll cover:

  • What SSH tunneling is
  • How to create a proxy using SSH tunnel
  • How to use Chrome with the tunnel
  • Some free SSH server providers
Read more »

Unlocking the Power of Time Machine: The Easiest Way to Back Up Your Mac

When it comes to protecting your Mac, Time Machine offers an effortless and powerful way to keep your files safe. This built-in backup tool for macOS is not only reliable but incredibly easy to use — perfect for both tech novices and power users alike.

What Is Time Machine?

Time Machine is macOS’s built-in backup feature that automatically backs up your entire system — including:

Read more »

Block Advertisements on iPhones or any iOS Devices

In today’s mobile-first world, ads can be intrusive and slow down your browsing experience. Whether you’re reading an article or playing a game, advertisements seem to pop up everywhere on iOS. Thankfully, you can block these ads using various methods — including Safari extensions, VPN apps with ad-blocking features, and DNS-based solutions.

Here’s a comprehensive guide to the latest and most effective methods to block ads on iOS devices:

Read more »

Best DNS for Speed and Privacy (A Guide)

When it comes to faster browsing and stronger privacy, or minimising latency, switching to a better DNS (Domain Name System) provider can make a noticeable difference. Whether you’re a gamer, a privacy advocate, or just looking for a more reliable internet experience, a good DNS can be a game-changer.

Here’s a rundown of the most popular DNS services in 2025, ordered by popularity and effectiveness, with IPs, features, and facts for each.

Read more »

Your Smart TV Is Watching You—Here’s How to Make It Stop


Disable ACR for some privacy.

In the age of smart everything, it’s easy to forget that your TV might be doing more than just streaming your favorite shows. Behind the scenes, it’s probably keeping tabs on what you’re watching—and using that data to feed you targeted ads. Sound invasive? That’s because it is.

But there’s a way to take back control: it’s time to turn off ACR.

Read more »

Fastest way To Book IRCTC tickets Tatkal Or Opening Date

I find the IRCTC app much faster. Once you load the master list during a session, it stays cached—no repeated server calls. Also, unless it’s changed recently, the master list doesn’t show up on the desktop site during Tatkal hours.

So here’s what I usually do:

Read more »

Update Google AMP Cache with Perl

While implementing Google AMP (Accelerated Mobile Pages) for your website, it might occur to you that you might need to update your page, and how would the AMP cache be invalidated/flushed/updated. Google AMP project has an easy solution for this, it’s an API call to the invalidate any URL.

We can use the update-cache request to update and remove content from the Google AMP Cache. Google AMP cache updates content based on the max-age present in the header when the page was last fetched. The update-cache endpoint requires the user to make a signed request using a self generated RSA private key, the public key should be available at a standard location on your website.

I faced the same dilemma, I had read the docs, but couldn’t find any ready-made solution in Perl, so I had to write mine, which I will be sharing with you. Here’s how to get going.

First we need to generate the the private & public keys:

$ openssl genrsa 2048 > private-key.pem
$ openssl rsa -in private-key.pem -pubout >public-key.pem
$ cp public-key.pem <document-root-of-website>/.well-known/amphtml/apikey.pub

replace <document-root-of-website> with your website’s document root.

Next, here’s the Perl code to which accepts an URL which needs to be invalidated. I have commented the code so its easier to understand.

#!/usr/bin/perl

use utf8;
use MIME::Base64 qw[encode_base64url];
use Mojo::UserAgent;
use Crypt::OpenSSL::RSA;
use Mojo::URL;
use Mojo::File;

## paths to keys
my $path_to_priv_key = 'private-key.pem';

my $ua = Mojo::UserAgent->new;

## get URL from command line argument
my $url = shift;

unless ( defined($url) && $url ) {
die('URL required');
}

my $url_obj = Mojo::URL->new($url);

## fetch the JSON containing the caches those need to be invalidated.
my $caches = $ua->get('https://cdn.ampproject.org/caches.json')->res->json;

unless ( defined($caches) && ref($caches) ) {
die('Could not get caches');
}

## load the private key
my $priv_key = Mojo::File->new($path_to_priv_key)->slurp;
## create openssl private key instance
my $rsa_priv_key = Crypt::OpenSSL::RSA->new_private_key($priv_key);

## select the hashing algo to use, which as specified by Google AMP is SHA-256
$rsa_priv_key->use_sha256_hash();

## loop through the caches to be invalidated
foreach my $cache ( @{ $caches->{caches} } ) {
## build the URL to invalidate
my $url_to_sign = sprintf( '/update-cache/c/s/%s%s?amp_action=flush&amp_ts=%s', $url_obj->host, $url_obj->path, time() );

my $encrypted_sig = $rsa_priv_key->sign($url_to_sign);

## get AMP-style hostname, read more at https://developers.google.com/amp/cache/overview#amp-cache-url-format
my $host_amp_style = $url_obj->host;

$host_amp_style =~ s/([.-])/($1 eq '.')?'-':'--'/eg;

## URL-safe base64 encode the signature
my $sig = encode_base64url($encrypted_sig);

## build API URL to call
my $api_url = Mojo::URL->new( sprintf( 'https://%s.%s%s&amp_url_signature=%s', $host_amp_style, $cache->{updateCacheApiDomainSuffix}, $url_to_sign, $sig ) );

## make request
my $tx = $ua->get($api_url);

## print reponse, you may change this according to your needs
print $tx->res->body;
}

Further reading:

Don’t buy Reliance Jio’s JioFi Device or JioPhone – Avoid at all cost

Thinking of buying the JioFi device by reliance or to be precise any device by Jio?

Please don’t, they are not simply worth the amount you pay for, you might be risking your life or body parts. Listen to my story first please

JioFi2-Swollen-3

 

Read more »

Solution for Copy Paste or right click disabled in Websites Chrome

Do you hate those pesky javascripts. Majority of the banking, utility bill payment etc so called secured websites try to limit their users by putting up limitations on their users ability to copy and paste. I totally disagree on this limitation because if you are copying from a reliable source, maybe from a vault app or even from a plain vanilla notepad, you are actually more confirmed about the data rather than typing it out yourself.

Here’s how you can avoid the limitations easily, without installing anything else in Chrome.

Read more »

Sync personal ebooks with notes, bookmarks reading position on your Kindle

Amazon Kindle Syncing Across Devices

So amazon has this amazing feature called whispersync :

If you read the same Kindle Store book across multiple Kindles, you’ll find Whispersync makes it easy for you to switch back and forth. Whispersync synchronizes the bookmarks and furthest page read among devices registered to the same account. Whispersync is on by default to ensure a seamless reading experience for a book read across multiple Kindles.
Read more »