Vaccination is an effective method for prevention of infectious diseases, but when the number of available vaccines is limited, it is not possible to vaccinate everyone in a society. In this paper, a two-step model is proposed to distribute a limited number of vaccines among the people of a society, in a way that would disrupt the transmission chain of the infectious disease most efficiently. In the first step, the vaccines are allocated to different communities in the society (e.g. cities in a country), and in the second step, the individuals whose vaccination removes the greatest number of transmission routes for the infection are identified in concordance with the regulations of international health organizations. In the second step, contact data is obtained from cellular networks and Bluetooth signals, and a graph-based modeling scheme is utilized in conjunction with a combined susceptibility metric specifically designed for selection of these individuals. The simulations indicate that a 30% drop in infection rate compared to random vaccination could be achieved.