This is a combination of M. Rostami's answer and my reflections on his answer, which I found cumbersome to add as comments.
NB: Your question shows you know how to find your public IP address and the internal address of your Pi. I've included directions here in the hope that they will help others.
On your Pi, set up SSH on the default port number, port 22. You will also need the internal IP address of your Pi, which you can get with ip a
typed into a terminal window. Look for the eth0 address for wired connections or the wlan0 address for wireless. The address may look like 192.168.x.x or 10.x.x.x.
When you have SSH running, set up SSH cryptographic key security. That allows you to log in with a cryptographic key rather than a password. For so long as you keep the key secure, your Pi is protected. There are instructions for setting up cryptographic authentication here: https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2 and probably plenty of other places, including a brief discussion of the value of such keys in this Stack Exchange Community.
- Do protect the private key with a password. You'll have to type it every time you log in, but you've at least somewhat protected the private key in case your remote system is somehow compromised.
- Do disable root logins using passwords after you've tested that you can log in using SSH protected by cryptographic keys.
- Consider disabling all logins with passwords. (Do this unless there's a good reason why someone could not use a key to log in.)
Note: Your Pi is not accessible from outside yet, and that's good. Set up security first, then open up access.
You will need to pick an external port number to access your server from outside. The bad guys on the Internet "rattle doorknobs" looking for open ports, then try to get in through those ports. You can't stop them, but you can discourage them. One way of doing that is to use a slightly obscure external port. Pick a port number that is greater than 1023 and does not end in 22. Perhaps something like 7137. Your SSH will still be detected by full port scanning, but it's a lot more work than just rattling those doorknobs that end in 22.
Now set up your router to forward incoming traffic on the port you picked to the internal IP of your Pi on port 22. How to do that will depend on the router you have.
You are now set to SSH to your Pi from outside. You can find out the public (outside) address of your router with https://www.whatismyip.com/
Assuming a public address of 11.111.11.11 and a port of 7137, you'd SSH to 11.111.11.11:7137. Done!
Although your ISP can change that outside address, called a dynamic IP address, my own experience is that mine doesn't change often. If you find, using WhatIsMyIP, that yours changes frequently, there are dynamic DNS services that will let you assign a name and keep up with the changing IP address. I use a paid service, but there are free services. Something within your home will have to run the dynamic DNS client. You can do that on your Pi.