In an environment where the Web Dispatcher resides in a DMZ and all portal/application servers are internal these are some of the steps I take:
1. Validate that all necessary ports are open: The port coming into the Web Dispatcher from the outside, the ports from the Web Dispatcher to the portal and application servers, and the ports between systems that will need to communicate.
2. Validate internally that all connections (SSO, ITS, and WAS at least) are working from the portal. I use only HTTPS, even internally. This makes sure that SNC is configured correctly and certificates are in place.
3. Validate Web Dispatcher certificate is valid and present. This is simple: just connect to the Web Dispatcher with a browser and look for the secure icon or certificate error.
4. After you know that all communication between the portal and the application servers are working, you need to re-point the portal's system definitions to the outside address. If the external URL for your Web Dispatcher is https://portal.mycompany.com, then that is what you need to point the system definitions to within the portal. This will likely cause your connection tests to fail, however the actual scenario will work. Instead of your portal links trying to reach internal addresses externally, it will route that traffic through the Web Dispatcher as long as you have the correct systems defined within the WD profile.
5. Change all external facing URLs configured in your backend systems to also use the external link (SUS emails, approval links, etc.). Anything that is designed to be seen or clicked on externally needs to point to an address that is accessible from outside your firewall.
Following these steps should get you well on your way to getting your portal accessible from the outside world.
Hope this helps...