I've lots of domain names all pointing to my servers IP but since they're just holding domain names I've not set up them in WHM / Apache. Therefore they simply get "can't display website" messages when visited.

Can you really setup rule (or whatever! (Virtual Host?)) which will point any domain names not set up on my small server (but pointed into it) to some generic holding page?

I believed I possibly could make use of a VirtualHost such as this:

<VirtualHost 123.123.123.123:80>
DocumentRoot /www/path/to/holding/account/
ServerName *
</VirtualHost>

Hope which makes sense! Thanks

Just omit the ServerName directive.

From the /etc/apache2/sites-enabled/000-default - observe that just the DocumentRoot directive is needed:

<VirtualHost *:80>
    DocumentRoot /var/www/default

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>