我是大专学院的学生,由于家离学校很近,家庭的状况也不是很好,家人和本人都不想住校,去年没有在学校办理外宿证,但是申请后学校允许走读了一年。但今年交费时规定必须要拿外宿证,才能免交住宿费,本来要找班主任办,结果班主任说今年不办外宿证了,但是可以不住校。言外之意就是可以不住校,但是必须交住宿费,请问这样的变相收费是否合法?另外再问一下,学校是否有权利强制学生住校?