Copying files with a mode 400 seems to set to 620 instead

Hey,

This is potentially something that is frowned upon, but I’m trying to add SSH keys to a server via Ansible so that the destination server can use these keys later for other operations.

So I am trying to do the following:

`

  • name: add default ssh keys
    become: true
    copy:
    src: ./.ssh/
    dest: ~/.ssh
    mode: 400
    force: true
    `

I would expect to see the keys added and set to read only:

-r--------

However, when looking at the keys on the destination server I’m seeing this:

-rw--w----

Is there any particular reason why they do not have the permissions I’m asking?
Or is there a way I can upload them and then update all keys in that folder to be read only?

Thanks,
Gary

Check out the following comment from github:

https://github.com/ansible/ansible/issues/13159#issuecomment-156482308

Short answer is that you need to use 0400 instead of 400 so that Ansible knows you are supplying an octal mode as opposed to decimal.