Assuming the college was Regionally Accredited, that is sufficient to apply. For other requirements check: http://www.secretservice.gov/join/index.... and for special agents: http://www.secretservice.gov/join/career...
Any major is acceptable, but CJ, Computer Science, Sociology, Accounting, or Psych may stand you in better stead for most positions. However, GPA is probably more important than major. Those meeting the minimum requirements may not compare well to the best qualified applicants, and there are always more applicants than positions. The FBI likes lawyers and accountants, but they hire from various backgrounds, with at least 3 years of substantive employment (http://www.fbijobs.gov/). The same could be said for the Secret Service, their primary duties (outside of protection) involve financial crimes and counterfeiting. Any responsible employment may acceptable, but law enforcement may be beneficial (particularly investigative rather than patrol). Other federal agency job announcements should be available at https://my.usajobs.gov/login.aspx.
The FBI in particular needs people capable of investigating major frauds and conspiracies involving numerous business and technical occupations and professions; whereas, local police are more oriented to street crime. Federal agents must be capable of understanding and communicating at a level above that usually expected from patrol officers. Federal agencies are looking for people who fit in at all social strata, and the expectations are greater with regard to preparation of reports and affidavits. In my experience, state and local officers have their affidavits for search and arrest warrants written by prosecutors; whereas, federal agents write their own.
Being a military officer will normally be advantageous, and military service usually provides veteran preference in the hiring process. However, enlisted service will not necessarily enhance one’s prospects, unless in a specialized position or exemplary service is documented. Military police assignments will not necessarily provide an advantage over infantry assignments, and the branch of service is not necessarily important. Being a practicing attorney or accountant would also place one in a good position. Forensic computer expertise and language capabilities are valued in all agencies.
You are more likely to be successful if you do not restrict yourself to one agency. Moreover, agents get hired from other agencies regularly. If you have proven yourself in another agency (particularly federal), you will have an advantage for FBI hiring. Being a police officer may be helpful, depending on personal performance, assignments, and agency reputation.
In my experience, hiring decisions are made based on college GPA (above 3.5 is a plus), written examinations, physical fitness (possibly physical test results), work experience, possibly a polygraph, ability to communicate orally and in writing, foreign language ability, and graduate/law degrees. There are always more applicants than there are positions.
There are numerous special agent positions (see list below, not all have full arrest, search, and seizure authority), in what was and I assume still is the 1811 job series (1810 are unarmed investigators without arrest authority). There are also law enforcement related positions in the Dept of Homeland Security and other agencies, such as inspector positions or Border Patrol agents, that could be open to those with 2 years of college or less. And, there are federal police officers within federal agencies (e.g., Dept of Veterans Affairs, Treasury, Federal Protective Service). Agencies:
ATF, Customs and Border Protection (uniform wearing: Border Patrol Agent, Officers), DEA, Dept of Def, Dept of State, Dept of Homeland Sec (ICE, TSA), Dept of Labor, EPA, FBI, FDA, Fish & Wildlife (few positions, many applicants), Inspector General Offices within departments and/or agencies, IRS, Marshals Service, Secret Svc, Securities Exchange Commission, and each branch of the Armed Forces (some civilian, some active duty).
Apply at as many places as possible, and accept the first offer. Then, if that’s not where you want to be, keep applying to the agency you want.
I would recommend state's attorney because you'll be exposed to a lot more types of law there. Public defender is just criminal law, and if you don't know what you want to do, working with the state attorney's office will cover more legal ground so you'll get some different experiences.
One isn't really more prestigious than the other. Neither one will help you get into law school more than the other, and neither one will help you get a job once you're in law school more than the other. If you're sure you want to do criminal law (or if you want a more in-depth experience) go with the public defender. Otherwise state's attorney makes more sense for broader exposure.