How can I restrict certain file extensions and file upload size via SSH?
I am using Ubuntu 12.10 default installation and Open-ssh server.
OpenSSH doesn't have these facilities, though you might be able to partly do this with commercial products (CrushFTP, Linoma or Barracuda come to mind).
If you want to apply content-filtering to uploads you can do this with OpenSSH by allowing users to upload to an incoming spool, and periodically scanning and moving approved content to an outgoing spool, this also works for A/V scanning. It won't work effectively for size-based uploads if your intention is to save bandwidth, file size is part of the scp protocol, this requires a client to advise, but not necessarily honour file size.