I believe ssh config is only applicable if you use the alias defined in the host clause to connect to the server.
those. you must have in ssh configuration:
host github hostname github.com user git identityfile /root/.ssh/viren
The host directive should follow what you really will use to connect, so the [Amazon server] not suitable. And you have to tell git to connect to:
github:/....
(and not git@github.com :/..... )
source share