Your original post gave error 12545 which is often related to naming. Now you are getting permission errors. So getting closer since you are now reaching the database.
in reply to Re^2: Connecting 'as sysdba' using DBD::Oracle
in thread Connecting 'as sysdba' using DBD::Oracle
Oracle docs indicate that error 1031 "insufficient privileges" is when you try to change username or password without appropriate privilege. As other have mentioned check you are in the correct groups to use the sysdba permission and that the user also is granted that in Oracle.