I just wanted to post my experience because I have gone through very similar experiences, but with hard work I have surpassed my expectations...
I graduated from a top 50 school in the US with a sub 3.0 overall GPA and a sub 3.0 science GPA, with a major in microbiolog and I had a very strong interest in public health. It was devastating to realize that my grades were so low and I thought that I had closed off all opportunities for academic advancement. Probably one of the worst moments in my undergraduate career was having my microbial genetics professor tell me that my grades were so bad I needed to reconsider a career in the sciences. It was a low point, and I was mentally burnt out.
I then worked at several firms in private industry as a microbiologist, quality control analyst, and laboratory technican, which did not pay much, but gave me valuable experience to build my resume (in-house studies, laboratory techniques, strong contacts, etc). I then managed to secure a great job in the public health field. It was good, but I still wanted to advance my education.
I then took 2 public health courses at an ASPH/CEPH accredited school as a non-dgree seeking student, to prove to applications committees and myself that I could handle graduate coursework. I applied to the same school and managed to get conditional acceptance, which eventually became full acceptance.
I graduated last semester with my MPH, while working full-time in the public health field, and I am currently applying to PhD programs in public health.
It is very possible to achieve academic success with persistence and maturity. My experience was difficult, but I would not trade it for any other because it helped me become a stronger person overall.