"Are you on vacation?"
Translation:Hast du Urlaub?
Holiday, in the sense of special celebration days, would be der Feiretag. "Holiday", in English, includes not only those special days but can also mean breaks from work or school, which we also call "vacation". Das Urlaub indicates that kind of holiday - a vacation where you don't go to work and go do fun things instead.
If you just have a break from work, you use the verb "haben" with Urlaub. If you are going away and doing something and its a vacation not a so-called staycation where you stay at home but just dont work, then you would use the verb "machen". You have a break from work, but you make a vacation.
If you translate word-for-word and consider "Urlaub" as "vacation" and not "leave" or "furlough", then yes. But it's idiomatic in a sense. If you can't think of it as "are you on vacation?" (which also is odd given that one would be more "in [the midst of]" a vacation than "on" one) then think of it as "are you on leave?"
Am I right in thinking that this is along the same lines as 'Hast du Hunger?' and 'Hast du Durst?' Does it follow in all circumstances in German where you are referring to a person or thing possessing a noun that you should use haben rather than sein?
Also why don't you need auf? Does 'Hast du auf Urlaub?' make sense?
It is very similar to "hast du Hunger/Durst?": "do you have hunger/thirst?" And, yes, if one possesses something, he "has" (haben) it and not he "is" (sein) it.
As far as the "auf", it's just not used. It may help to think of "Urlaub" as "leave" (in the sense of "annual leave" or sick leave" or just, in general, "leave [from work]").