The package provided by the upstream project already includes /etc/init.d/firewalld which will get executed on boot by /etc/rc.d/rc.sysvinit. So technically, you don't have to use the custom rc.firewalld. I have provided a patch that changes /etc/sysconfig/ to /etc/default in order to source any custom arguments. Otherwise, feel free to chmod -x /etc/init.d/firewalld and chmod +x /etc/rc.d/rc.firewalld then add it to your /etc/rc.d/rc.local like so: if [ -x /etc/rc.d/rc.firewalld ]; then /etc/rc.d/rc.firewalld start fi and the following to /etc/rc.d/rc.local_shutdown: if [ -x /etc/rc.d/rc.firewalld ]; then /etc/rc.d/rc.firewalld stop fi