Vaccine: Perturbation-aware Alignment for Large Language Models against Harmful Fine-tuning Attack