В последних версиях (серия 2.1) объект ответа называется beresp, и что-то подобное в vcl_fetch работает (я только что протестировал его на Varnish 2.1.0):
unset beresp.http.Server;
Я установил версию, которую вы используете (1.1.2), и получил то же поведение, которое вы упомянули; может показаться, что ключевое слово unset не работает, по крайней мере, в функции vcl_fetch. Это странно, так как по крайней мере один пример, который я нашел, упоминает использование unset для этой точной цели .
Если возможно, я бы предложил обновить до последней версии Varnish, поскольку я думаю, что маловероятно, что если наблюдаемое вами нестандартное поведение является ошибкой, команда будет готова исправить это.
За исключением этого, вы можете попробовать установить Server на что-то другое:
set obj.http.Server = "";
set obj.http.Server = "BogoServer Whatever";
Предполагая, что ваша цель - скрыть подпись сервера. Если вы хотите полностью удалить заголовок, я бы сказал, что это невозможно сделать с вашей версией Varnish.