Probably the easiest way to do this is to create a new user for them and specify this user when adding their domain (or sub-domain) to the system. This way they will have their own FTP log-in and will only 'see' the files related to their domain(s) when logging in.
You can also create a new WEBID for them and give this WEBID certain panel 'privileges', but working out exactly which privileges your friend needs can be a little difficult, as many of the privileges are inter-dependent. More info on WEBID privileges can be found in the wiki article linked below;
I believe that if you give your friend's WEBID privileges to a particular domain, they will also be able to manage the email accounts for that domain.
Save [color=#CC0000]$50[/color] on DreamHost plans using [color=#CC0000]PRICESLASH[/color] promo code (Click for DreamHost promo code details)