Is it possible to install multiple roles on the same server, such as dns, dhcp, ntp, ftp, file server?
Of course, so my counter question would be: what makes you think it couldn't?
What is the usual recommended practice or convention?
Whatever works best for you. This isn't a Windows environment where you simply select and add a "role" to your server, in fact the whole concept of roles doesn't exist on Unix as it does on Windows.
At best you simply enable a service by starting it. Take an FTP server for example... All it takes is
ftpd_enable="YES" in
/etc/rc.conf. SSH? Just enable it. You can take a look at
/etc/default/rc.conf for an overview of all the services and options which are available there. Just be careful not to edit it: that should be done in
/etc/rc.conf instead.
Seriously though, read the
FreeBSD handbook for a change. This is not an "RTFM" kind of answer but it contains answers to most basic questions, just like this one here. Not only that, it will also explain how you can set everything up.
The simplest way is to edit /etc/inetd.conf and uncomment the servers you want it to run (followed by service inetd reload
), but it doesn't handle all protocols and they generally don't have a lot of bells and whistles.
That's actually not very good advice because
inetd is disabled on FreeBSD by default. And if the OP needs to enable a service in
/etc/rc.conf anyway it would make more sense to address the service(s) they actually want to run.
Some things like ftp or a web server need a separate jail regardless of size.(my opinion)
So possible customers won't be able to use FTP to update their own websites?
Or do both jails get access to a shared storage section on the host? If you do this for enhanced security then that too could be tricky (depending on the situation)