Supondo que você esteja conectando o GitHub por SSH, você pode executar o comando abaixo para confirmar isso.
$git config --get remote.origin.url
Se você obtiver um resultado com o seguinte formato git@github.com: xxx / xxx.github.com.git, faça o seguinte.
Gere uma chave SSH (ou use uma existente). se você tiver uma, basta adicionar sua chave ao ssh-agent (etapa 2) e à sua conta do GitHub (etapa 3).
abaixo são para quem não tem chave SSH.
Etapa 1 Gerando par de chaves rsa pública / privada.
$ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Você será solicitado a confirmar onde salvar a chave SSH e qual a senha que deseja usar.
Etapa 2 Adicione sua chave ao ssh-agent
Etapa 3 Adicione sua chave SSH à sua conta
$sudo apt-get install xclip
$xclip -sel clip < ~/.ssh/id_rsa.pub
Em seguida, adicione a chave copiada ao GitHub
Vá para Configurações -> Chaves SSH (barra lateral Configurações pessoais) -> Adicionar chave SSH -> Preencha o formulário (a chave está na sua área de transferência, basta usar ctrl + v) -> Adicionar chave
Depois de seguir as etapas acima, você deve resolver o problema de permissão.
Link de referência:
Gerando chaves SSH .