We have a server (running on Ubuntu 20.04) accessible from a subdomain myserver.university.country, I would like to install SSL/TLS certificate on the server to make the connections to the server encrypted. This is my first time managing a server and when I asked around (boss, teammates) no one has the expertise to help.
We currently serve some websites that require login via some non standard ports (ie not 80 or 443, something like myserver.university.country:8687) not served via apache or other major server software (we use Shiny Server). Browsers show a not secure connection without a lock. We don't want the login credentials stolen or the information accessible to outsiders.
We are trying to use Let's encrypt via certbot to get certificates for our server. According to certbot documentation, this requires opening port 80 (which we don't want to be accessible).
The security team doesn't want to open port 80 to the whole internet, and wants to restrict access to certain IP range. In addition, they only want to open it for a brief period of time, which my understanding is that would prevent auto-renewing of the certificates. However, certbot doesn't specify a range and might use multiple IPs.
How can we make connections to our server secure (with free resources)?
I'm out of my depth and don't know how to properly configure the server for this and address the IT concerns.