Как переключаться между пользователями по ssh, если ключи были сгенерированы в PUTTY?
А ты точно добавляешь ключ тому пользователю (home/username/.ssh/authorized_keys)?
Ну и чтобы работать от разных пользователей не обязательно каждому генерить ключ и конектиться. Можно переключатся в текущей сессии с помощью: 
:~$su username
Когда вы к серверу подключаетесь через путти, приватный ключ лежит там, где путти.
А когда вы уже зашли на удаленный сервер, и юзером1 пытаетесь подключиться к юзеру2, то приватные ключи должны лежать у юзера1.
Вы можете уже внутри юзер1 сгенерировать новый ключ, и положить публичный от него в юзера2.
Или конвертнуть приватный ключ из путти в формат для ssh и положить его в юзер1