Create website directories for each user like /home/username/web. Change the permissions on /home/username from 700 to 711 so the Apache "user" www-data can see their sites. For each user, create a separate <VirtualHost> with a unique ServerName like user.domain.name and a DocumentRoot that points to /home/user/web.
Do you have a registered domain you can use? Itwould certainly make things a lot easier if each site had a unique public name like user.domain.name. In the DNS you could just have:
@ IN SOA domain.name. root.domain.name (
www IN A 184.108.40.206
user1 IN CNAME www
user2 IN CNAME www