Erwägungen:
1.
Mit Verfügung vom 25. April 2017 erteilte das Kantonsgericht Schaffhausen dem Beschwerdegegner gegenüber dem Beschwerdeführer in der Betreibung Nr. xxx des Betreibungsamts Schaffhausen definitive Rechtsöffnung für Fr. 2'000.-- sowie Kosten und Entschädigung. Als Rechtsöffnungstitel wurde der rechtskräftige Strafbefehl der Staatsanwaltschaft des Kantons Schaffhausen, Allgemeine Abteilung, Nr. yyy vom 8. Februar 2016 samt zugehöriger Rechnung vorgelegt.
Gegen die Rechtsöffnungsverfügung erhob der Beschwerdeführer am 3. Mai 2017 Beschwerde an das Obergericht des Kantons Schaffhausen. Mit Verfügung vom 12. September 2017 trat das Obergericht auf die Beschwerde mangels genügender Begründung nicht ein.
Am 11. Oktober 2017 (Postaufgabe) hat der Beschwerdeführer Beschwerde an das Bundesgericht erhoben.
2.
Aufgrund des tiefen Streitwerts (Art. 74 Abs. 1 lit. b BGG) und mangels Vorliegens einer Rechtsfrage von grundsätzlicher Bedeutung (Art. 74 Abs. 2 lit. a BGG) ist die Eingabe als subsidiäre Verfassungsbeschwerde entgegenzunehmen (Art. 113 ff. BGG). In einer subsidiären Verfassungsbeschwerde kann nur die Rüge der Verletzung verfassungsmässiger Rechte vorgebracht werden (Art. 116 BGG). Diese ist zu begründen (Art. 117 i.V.m. Art. 106 Abs. 2 BGG), d.h. anhand der Erwägungen des kantonalen Entscheids ist klar und detailliert darzulegen, welche verfassungsmässigen Rechte und inwiefern sie durch den angefochtenen Entscheid verletzt sein sollen (BGE 133 II 396 E. 3.1 S. 399).
3.
Das Obergericht hat erwogen, der Beschwerdeführer habe sich mit der Begründung des erstinstanzlichen Entscheids nicht auseinandergesetzt. Stattdessen habe er im Wesentlichen auf seine Invalidenrente, seine gesundheitlichen Probleme und seine Schwierigkeiten bei der Umsetzung und Bezahlung der Datenlöschung mit der Kriminalpolizei Schaffhausen hingewiesen. Diese Vorbringen würden in der Sache nicht helfen, da im Verfahren auf definitive Rechtsöffnung nur noch Tilgung, Stundung oder Verjährung eingewendet werden könne (Art. 81 Abs. 1 SchKG).
Vor Bundesgericht beanstandet der Beschwerdeführer, dass das Obergericht seine kantonale Beschwerde in der Sache nicht behandelt hat. Er legt aber nicht dar, inwiefern durch den Nichteintretensentscheid verfassungsmässige Rechte verletzt worden sein sollen. Er macht geltend, dass der als Rechtsöffnungstitel vorgelegte Strafbefehl von der Kriminalpolizei nicht umgesetzt werde und er deshalb keinen Grund sehe, die Staatsgebühr von Fr. 2'000.-- zu bezahlen. Er setzt sich aber nicht mit der Erwägung des Obergerichts auseinander, dass solches im Rechtsöffnungsverfahren nicht eingewendet werden könne. Schliesslich äussert er sich zu den Kosten für die Löschung von Festplatten. Soweit ersichtlich stehen diese Kosten, die ihm im Strafbefehl auferlegt worden sind, in keinem Zusammenhang mit der nunmehr in Betreibung gesetzten Staatsgebühr für den Strafbefehl. Ohnehin legt er auch insoweit nicht dar, welche verfassungsmässigen Rechte verletzt worden sein sollen.
Die Verfassungsbeschwerde erweist sich somit als offensichtlich ungenügend begründet. Auf sie ist im vereinfachten Verfahren gemäss Art. 117 i.V.m. Art. 108 Abs. 1 lit. b BGG durch das präsidierende Mitglied der Abteilung nicht einzutreten.
4.
Bei diesem Ausgang des Verfahrens trägt der Beschwerdeführer die Gerichtskosten (Art. 66 Abs. 1 BGG). Er verweist auf seine Invalidenrente und seine beschränkten finanziellen Möglichkeiten zur Führung von Gerichtsverfahren. Er stellt aber kein Gesuch um unentgeltliche Rechtspflege. Ein solches wäre infolge Aussichtslosigkeit der Beschwerde ohnehin abzuweisen gewesen (Art. 64 Abs. 1 BGG).
Demnach erkennt das präsidierende Mitglied:
1.
Auf die Verfassungsbeschwerde wird nicht eingetreten.
2.
Die Gerichtskosten von Fr. 500.-- werden dem Beschwerdeführer auferlegt.
3.
Dieses Urteil wird den Parteien und dem Obergericht des Kantons Schaffhausen schriftlich mitgeteilt.
Lausanne, 16. Oktober 2017
Im Namen der II. zivilrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Das präsidierende Mitglied: Escher
Der Gerichtsschreiber: Zingg