Rahman has also been slapped with a fine of two million taka (25,000 USD approx) over the incident and has been handed a six-month ban from the domestic game.
The 26-year-old has also been fined earlier for a disciplinary breach in 2016.
The punishment was spelled out by BCB president Nazmul Hassan after the disciplinary committee's hearing on Monday, reports ESPNcricinfo.
The decision came after Rahman was found to have assaulted a young fan on December 21, the second day of Rajshahi Division's National Cricket League game against Dhaka Metropolis.
Rahman allegedly went behind the sightscreen and beat the fan during innings break and also misbehaved with the match referee after being summoned for investigation.
The disciplinary committee's vice-chairman Sheikh Sohel, said, "We felt that he didn't learn anything from his past two punishments. He is out of the national contract, which is a huge blow. He is also fined Tk 20 lakh. But this is his last chance. If he has another brush with indiscipline, he will be permanently suspended."
Rahman has played 10 Tests, 46 one-day internationals (ODI) and 33 T20Is since his international debut in 2014 and has faced a series of disciplinary problems.(ANI)