La cosa e` semplice, ma occorre fare le cose con attenzione.

La finestra che deve essere chiusa deve venir aperta salvando l'oggetto in una variabile:

oggwin = window.open(...);

La variabile deve essere globale (quindi definita fuori dalle funzione, in testa alla pagina.

Poi per chiudere la popup quando la proncipale riprende il focus:

Nella principale:
<body ... onfocus="if(oggwin=='obiect' && !oggwin.closed) oggwin.close();">


Per la chiusura al click del link, come ha detto bigmaul:
testo del link