title: Can't stop getting asked for ssh key passphrase using SSH_ASKPASS
body: <p>I'm trying to automate ssh connection. The main goal - avoid being asked of <strong>passphrase</strong>. Here's ssh command:</p>
  
  <pre><code>    #!/bin/bash
      chmod 600 ssh_key
      chmod +x passhrase_script.sh
      DISPLAY=":0" SSH_ASKPASS="passhrase_script.sh"
      ssh -i ssh_key -F /dev/null -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no "$@"
  </code></pre>
  
  <p>It works for Ubuntu(OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014) and doesn't for CentOS(OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013)</p>
  
  <p>debug output:</p>
  
  <pre><code>`OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
  debug1: Reading configuration data /dev/null
  debug2: ssh_connect: needpriv 0
  debug1: Connecting to xxx [172.20.240.99] port 2222.
  debug1: Connection established.
  debug3: Not a RSA1 key file /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/ssh_key_8.
  debug2: key_type_from_name: unknown key type '-----BEGIN'
  debug3: key_read: missing keytype
  debug2: key_type_from_name: unknown key type 'Proc-Type:'
  debug3: key_read: missing keytype
  debug2: key_type_from_name: unknown key type 'DEK-Info:'
  debug3: key_read: missing keytype
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug3: key_read: missing whitespace
  debug2: key_type_from_name: unknown key type '-----END'
  debug3: key_read: missing keytype
  debug1: identity file /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/ssh_key_8 type -1
  debug1: identity file /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/ssh_key_8-cert type -1
  debug1: Enabling compatibility mode for protocol 2.0
  debug1: Local version string SSH-2.0-OpenSSH_5.3
  debug2: fd 3 setting O_NONBLOCK
  debug1: SSH2_MSG_KEXINIT sent
  debug3: Wrote 960 bytes for a total of 981
  debug1: SSH2_MSG_KEXINIT received
  debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
  debug2: kex_parse_kexinit: ssh-rsa-cert-v01@openssh.com,ssh-dss-cert-v01@openssh.com,ssh-rsa-cert-v00@openssh.com,ssh-dss-cert-v00@openssh.com,ssh-rsa,ssh-dss
  debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
  debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
  debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
  debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
  debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
  debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
  debug2: kex_parse_kexinit: 
  debug2: kex_parse_kexinit: 
  debug2: kex_parse_kexinit: first_kex_follows 0 
  debug2: kex_parse_kexinit: reserved 0 
  debug2: kex_parse_kexinit: ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
  debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
  debug2: kex_parse_kexinit: aes128-ctr,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc
  debug2: kex_parse_kexinit: aes128-ctr,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc
  debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-sha2-256,hmac-sha2-512,hmac-sha1-96,hmac-md5-96
  debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-sha2-256,hmac-sha2-512,hmac-sha1-96,hmac-md5-96
  debug2: kex_parse_kexinit: none
  debug2: kex_parse_kexinit: none
  debug2: kex_parse_kexinit: 
  debug2: kex_parse_kexinit: 
  debug2: kex_parse_kexinit: first_kex_follows 0 
  debug2: kex_parse_kexinit: reserved 0 
  debug2: mac_setup: found hmac-md5
  debug1: kex: server-&gt;client aes128-ctr hmac-md5 none
  debug2: mac_setup: found hmac-md5
  debug1: kex: client-&gt;server aes128-ctr hmac-md5 none
  debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024&lt;1024&lt;8192) sent
  debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
  debug3: Wrote 24 bytes for a total of 1005
  debug2: dh_gen_key: priv key bits set: 138/256
  debug2: bits set: 518/1024
  debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
  debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
  debug3: Wrote 144 bytes for a total of 1149
  debug3: put_host_port: [172.20.240.99]:2222
  debug3: put_host_port: [xxx]:2222
  debug3: check_host_in_hostfile: host [xxx]:2222 filename /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host [xx]:2222 filename /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host [xx]:2222 filename /etc/ssh/ssh_known_hosts
  debug3: check_host_in_hostfile: host [xx]:2222 filename /etc/ssh/ssh_known_hosts
  debug3: check_host_in_hostfile: host [172.20.240.99]:2222 filename /vcs-hosting/tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host [172.20.240.99]:2222 filename /vcs-hosting/tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host [172.20.240.99]:2222 filename /etc/ssh/ssh_known_hosts
  debug3: check_host_in_hostfile: host [172.20.240.99]:2222 filename /etc/ssh/ssh_known_hosts
  debug1: checking without port identifier
  debug3: check_host_in_hostfile: host xxx filename //tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host xxx filename /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host xxx filename /etc/ssh/ssh_known_hosts
  debug3: check_host_in_hostfile: host xxx filename /etc/ssh/ssh_known_hosts
  debug3: check_host_in_hostfile: host 172.20.240.99 filename /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host 172.20.240.99 filename /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/known_hosts_8
  debug3: check_host_in_hostfile: host 172.20.240.99 filename /etc/ssh/ssh_known_hosts
  debug3: check_host_in_hostfile: host 172.20.240.99 filename /etc/ssh/ssh_known_hosts
  Warning: Permanently added '[xxx]:2222,[172.20.240.99]:2222' (RSA) to the list of known hosts.
  debug2: bits set: 526/1024
  debug1: ssh_rsa_verify: signature correct
  debug2: kex_derive_keys
  debug2: set_newkeys: mode 1
  debug1: SSH2_MSG_NEWKEYS sent
  debug1: expecting SSH2_MSG_NEWKEYS
  debug3: Wrote 16 bytes for a total of 1165
  debug2: set_newkeys: mode 0
  debug1: SSH2_MSG_NEWKEYS received
  debug1: SSH2_MSG_SERVICE_REQUEST sent
  debug3: Wrote 48 bytes for a total of 1213
  debug2: service_accept: ssh-userauth
  debug1: SSH2_MSG_SERVICE_ACCEPT received
  debug2: key: /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/ssh_key_8 ((nil))
  debug3: Wrote 64 bytes for a total of 1277
  debug1: Authentications that can continue: keyboard-interactive,publickey
  debug3: start over, passed a different list keyboard-interactive,publickey
  debug3: preferred publickey,keyboard-interactive,password
  debug3: authmethod_lookup publickey
  debug3: remaining preferred: keyboard-interactive,password
  debug3: authmethod_is_enabled publickey
  debug1: Next authentication method: publickey
  debug1: Trying private key: /tests/tests-war-loader-impl/build/apps/slave/temp/repo/project-44-1473687324554/git-temp/ssh_key_8
  debug1: PEM_read_PrivateKey failed
  debug1: read PEM private key done: type &lt;unknown&gt;
  debug1: read_passphrase: can't open /dev/tty: No such device or address
  debug2: no passphrase given, try next key
  debug2: we did not send a packet, disable method
  debug3: authmethod_lookup keyboard-interactive
  debug3: remaining preferred: password
  debug3: authmethod_is_enabled keyboard-interactive
  debug1: Next authentication method: keyboard-interactive
  debug2: userauth_kbdint
  debug2: we sent a keyboard-interactive packet, wait for reply
  debug3: Wrote 96 bytes for a total of 1373
  debug1: Authentications that can continue: keyboard-interactive,publickey
  debug3: userauth_kbdint: disable: no info_req_seen
  debug2: we did not send a packet, disable method
  debug1: No more authentication methods to try.
  Permission denied (keyboard-interactive,publickey)`
  </code></pre>
  
  <p>As you can see it says <code>debug2: no passphrase given, try next key</code> by the end. SSH_ASKPASS is set and works fine</p>