ruchirablog wrote:
wordpress doesn't support sftp on wp-admin control panel
Nonsense. WordPress's backend supports FTP, FTPS (SSL) and SSH2 (password or public/private keys) (see attached screenshot).

I use SSH (via a non-standard port) to update WordPress and plugins without issue. You can even set login constants in wp-config.php so that you don't have to keep re-entering login details:
Code:
define('FTP_BASE', '/var/www/wordpresswebsite/');
define('FTP_CONTENT_DIR', '/var/www/wordpresswebsite/wp-content/');
define('FTP_PLUGIN_DIR', '/var/www/wordpresswebsite/wp-content/plugins/');
define('FTP_USER', 'SSHUSERNAME');
define('FTP_PASS', "SSHPASSWORD");
define('FTP_HOST', 'SERVERIPADDRESS:SSHPORT');(I've only ever felt comfortable including login details in wp-config.php when wp-config.php isn't in the root WordPress folder, its default location. I move all wp-config.php files to a non-web accessible location, out of the root WordPress folder.)
If you set the login constants in wp-config.php, I've always found that the first time you try to update either WordPress itself or a plugin WordPress will 'hang' for a short while before giving a connection error. For some reason, despite the presence of the login constants, WordPress seems to initially default to FTP (port 21) - if you then check the 'SSH2' checkbox and click 'Proceed' WordPress will use the login constants and all subsequent updates will work flawlessly.
My wp-content folder is owned by the Apache user (www-data:www-data) and has the recommended 755 permissions (644 for files).
All that said, I'm not sure why you are receiving connection errors, Boomfelled. I'm assuming when you say 'sftp connection from a WordPress install' you mean SSH? And are checking the 'SSH2' checkbox and not 'FTPS (SSL)'?