北征匈奴
班固修《汉书》,旷日持久,虽然得到了皇帝和部分士人的赏识,然而也不过是做了个兰台令史、校书郎、玄武司马之类的小官。因此,班固也在等待时机,以求建功立业。北单于派遣使者来朝纳贡,意欲和亲,章帝讯问众官。班固分析两汉时局,建议通使匈奴,以宣扬汉德(即《匈奴和亲议》)。
章和二年(年),章帝卒,汉和帝即位,年仅十岁,窦太后临朝,起用窦宪为侍中,掌控大权。窦宪专横跋扈,无视朝廷法律。后因刺杀齐殇王的儿子刘畅,事发被捕入狱,窦宪请求率军北征匈奴以赎死罪。当时匈奴分南北两部,南匈奴亲汉,北匈奴反汉。正好南匈奴请求汉朝出兵讨伐北匈奴。朝廷便任命窦宪为车骑将军,以执金吾耿秉为副,发北军五校﹑黎阳﹑雍营﹑缘边十二郡骑士,及羌胡兵出塞。
永元元年(年),班固年届五十八岁,因遭母丧,辞官守孝在家。班氏家族向来有与边疆事务打交道的经验,于是,班固也想通过边境立功,获取功名,以便施展才能。班固得知窦宪被任命为将军,率大军攻伐匈奴的消息,便决定投附窦宪,随大军北攻匈奴,被窦宪任为中护军,参与军中谋议。
燕然勒石
窦宪与耿秉各率四千骑、南匈奴左谷蠡王师子率万骑从朔方鸡鹿塞(今内蒙古磴口县西北哈萨格峡谷口)出兵;南单于屯屠河率领万余骑从满夷谷(今内蒙古固阳县)出兵;度辽将军邓鸿和边境地区归附朝廷的羌胡八千骑、左贤王安国万骑从翩阳塞(固阳县境)出兵。三路大军在涿邪山(阿尔泰山东脉)会师。
窦宪命副校尉阎盘、司马耿夔等率精兵一万多,与北单于在稽落山作战,大破敌军。敌众溃散,单于逃走。窦宪整军追击,直到私渠比鞮海(乌布苏诺尔湖)。此役,共斩杀名王以下将士一万三千多人,俘获马、牛、羊、驼百余万头,来降者八十一部,前后二十多万人。窦宪、耿秉遂登燕然山(今蒙古境内杭爱山),去塞三千余里,刻石勒功,纪汉威德,令中护军班固作铭。班固作《封燕然山铭》,其辞曰:“铄王师兮征荒裔,剿凶虐兮截海外,夐其邈兮亘地界,封神丘兮建隆嵑,熙帝载兮振万世”,然后班师。班窦两家本有世交之谊,班固入窦宪幕府后,主持笔墨之事,与窦宪关系更为亲密,便撰写《窦将军北征颂》,对窦宪北征匈奴大加歌颂。
永元二年(公元0年),北匈奴单于派亲王向窦宪通报,请求向汉称臣,并想入京朝见。窦宪上表请示后,派班固、梁讽带领数百人出居延塞(今内蒙额济纳旗)迎接。这时,南单于上书汉廷,建议乘机消灭北单于,然后南北匈奴合并归汉。汉廷同意,于是,南单于大败北单于,北单于受重伤逃走。班固等人走到私渠海,转头返回。窦宪认为北单于势力微弱,想乘机将其彻底消灭,次年,窦宪率军精兵出击,出塞五千里,进攻金微山,大破北匈奴主力,斩首五千余级,俘虏北单于皇太后,北单于遁逃,不知去向,其国遂亡。
含冤被害
班固从窦宪北征匈奴以后,进入窦宪幕府。此时的窦宪,因为平定匈奴有功,威名大盛,心腹众多,官员进退都由他一人决定,朝臣震慑,望风希旨。尚书仆射郑寿、乐恢由于招致他的不满,被迫相继自杀。
永元四年(公元年),窦宪密谋叛乱,事发被革职,回到封地后被迫自杀。班固与窦宪关系密切,因而受到株连,也被免职。洛阳令种兢对班固积有宿怨,窦宪案发后,种兢借机罗织罪名,大加陷害。班固被捕入狱,同年死于狱中,年六十一岁。
和帝得知班固已死,下诏谴责种兢公报私仇的恶劣做法,并将害死班固的狱吏处死抵罪。