Запуск из /etc/rc.local - штука непредсказуемая, так как, например, запуск может произойти ещё до того, как заработает сеть, и поэтому скрипт обломается.
По-хорошему, нужно взять какой-нибудь сетевой серсис (апач например, если установлен) из /etc/init.d за образец, и создать свои скрипты, прописав их запуск под номером (для sysv init), бОльшим тех сервисов, которые нужны уже запущенными при старте вашего сервиса (или, для systemd - прописав правильные зависимости).
На худой конец, скрипт можно запустить из кронтаба нужного пользователя, вставив строчку:
@reboot /usr/local/bin/your-script.sh
но скрипт не будет отрабатывать завершение работы системы, так что лучше озаботьтесь таки созданием номального сервиса.