customer wont provide ssh access - ftp only

Solution 1:

This will make the admin angry and you happy :): php shell

Solution 2:

If the customer doesn't wish to give you SSH access you should accept that. Perhaps they have a legitimate concern or requirement. Did your original contract or agreement mention the fact that you where expecting to have SSH access to the host?

You haven't mentioned anything that I can see that really requires you to have SSH access. I understand that you may be more comfortable doing it via SSH on the remote host, but there are alternatives methods. As a web developer should should work on being prepared to adapt to your customers requirements. Or at least you should agree on the access you will have require before you accept the job.

In your example you mention uncompressing an archive. You can do that on your local machine and transfer the uncompressed files. Find an ftp client that allows you to transfer an entire directory structure. There are many.

You mentioned you need to make changes to a mysql database. Simply hack up a script quickly that will perform the changes for you.

You need to communicate to your customer exactly what exactly needs to be done that you cannot do via file-transfer and phpadmin and have them do it. Charge them extra if you need to. If you where clear that you needed SSH access at the start, and they have not provided it, then you can probably charge them more for the additional time.

Solution 3:

Just keep sending them detailed bills containing all the extra time you've had to spend working around their stupid requirements. If management won't back you, find another job.