besiege

US /bɪˈsiːdʒ/
UK /bɪˈsiːdʒ/
1.

to surround a place, especially with an army, to prevent people or supplies getting in or out:

:
The town had been besieged for two months but still resisted the aggressors.