In Windows WSL bash, the chmod command may error or fail to execute.
For example, when you download an ssh.key file from a browser, cd to the download folder, and execute a command like chmod 400 ssh.key, it may error, or the command executes but the file permissions are not actually changed - itโs not working properly.
This problem may have been resolved in WSL 2, but in WSL (WSL 1) this problem still persists, and the main cause is that the file whose permissions are being changed is located on the Windows file system rather than the WSL file system.
For example, this happens when the ssh.key file is at C:/Users/user/Download/ssh.key.
In such cases, copy or move the file to the WSL file stand ~ (/home/user or /home/user/.ssh), and from that location execute the chmod command (chmod 400 ~/.ssh/ssh.key) to try changing the file permissions.
(Reference)
referencing files in the Windows file system, they do not [Unable to change file permissions on Ubuntu Bash for Windows 10 - Super User](https://superuser.com/questions/1323645/unable-to-change-file-permissions-on-ubuntu-bash-for-windows-10)