A good way to search for these stopovers is to use matrix. Here's an illustration of a search for stopovers of at least 36 hours (2160 minutes).
First do a simple search to get an idea of prices without stopover charges:

Which produces this result (I requested prices in USD to make comparison easier):

Next add in the /minconnect option which requests a stopover/layover with a minimum connection time in minutes:

Which gives:

You'll often find the same stopover point, so you might want to eliminate one or several stopover points from your search and you can do that by specifying "~XXX" for not airport XXX or "~XXX,YYY" for not either of airport XXX or YYY, followed by "*" meaning any number of additional flights, e.g.

and you might end up with an alternative set of stopovers:

Once you've found a set of flights that look suitable, you'll need to check visa requirements and then try to book the flights either on an airline's website with the multicity option, or call a travel agent.