Where to install or use SQL Server?
What is the best practice for installing/using SQL Server Management Studio?

I recommend installing SSMS on your laptop/desktop, and connecting to servers remotely. In general, I like to minimize the number of situations that require me to RDP into a server.
(That being said, I generally install SSMS on the server at the same time I install a SQL instance. But I don't use the server installation of SSMS except for emergencies.)

Do they have to be SQL Servers?

SSMS can connect to a variety of SQL products, including the Database Engine, Analysis Services, integration Services, Reporting Services, and Azure versions of SQL. But it can't connect directly to other database systems, like Oracle, DB2, or Access. You can, however, create Linked Servers within SQL that will allow a SQL instance to talk to non-SQL databases.