Samba is designed for LAN's and not for external connections. Maybe
look here
You can do the above with iptables but you would need to restart the rules every month since it has no effective restart (besides pulling down the rules and putting them back up)
I believe the quota match is in kilobytes so for 100MB..
Something like:
Code:
iptables -A INPUT -t tcp --dport 80 --quota 102400 -j ACCEPT
Assuming the policy is drop, this will accept up to 102400kb (100mb) and then stop accepting till the rule is removed and placed back. If you put the process into a script that runs every month to reset all rules, this could work well.
This
post explains quota too