Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Perl ISP management.

by muzakfetch (Scribe)
on May 16, 2001 at 04:13 UTC ( [id://80757]=perlquestion: print w/replies, xml ) Need Help??

muzakfetch has asked for the wisdom of the Perl Monks concerning the following question:

Hi everyone, I am looking for advice on the following idea.

I am looking to write a program (in perl of course) to help accounting at the ISP I am working for.
My boss has provided the following criteria for me:

1. Has a web interface.
2. Automatically adds users to radius, mail, and personal web servers.
3. Has a trouble ticket database (MySQL?) that is linked to the users' accounts.
4. Automatically prints invoices for billing customers.
5. Has a "Tech" database that allows techs to store solutions to problems they run into during work.

There are some other features but the main part of it is above. I do realize that there are some people who have already written similar programs to do this. However, I offered to take it up because I have a feeling this is going to increase my knowledge of perl.

I am mainly asking for suggestions at this point, and maybe if you have written portions of what I have discussed above, a little bit of coding help.

Thanks again for any help and advice you can provide.

Brother Tyler, aka muzakfetch.

Replies are listed 'Best First'.
Re: Perl ISP management.
by perigeeV (Hermit) on May 16, 2001 at 05:26 UTC

    There's an old saying: "Never eat anything bigger than your head." You just walked up to the counter and ordered a deep-fried Volkswagon.

    Don't get me wrong, more power to ya if you are interested. You'll certainly learn a bit about Perl! I would suggest picking just one piece of those requirements and start from there. Keep it modular and you can always grow. Best of luck.

      Thanks for the great advice, and I am finding a lot of resources on the web. I am actually looking forward to a project of this magnitude.
      I am never one to do things halfway. ;-)

      Tyler
Re: Perl ISP management.
by Yoda (Sexton) on May 16, 2001 at 11:10 UTC
    The paragraph below is how I implemented a system that allowed users to signup via the internet. After reading your input again, I realized that you may not be wanting that functionality.

    I wrote a portion of code at one time that added users to a BSD box. Perl was only the Web Interface. I have since learned that my implementation was probably very risky. I had the Perl script add names and passwords to a file that got evaluated every 5 minutes by a cron job. The cron script then called the existing Unix shell scripts to add the user to radius and the system. My main concern was that someone would somehow fake out the system to add a root user. I tried to break the system and couldn't but then again I am no hacker. I'm sure my implementation, at that early a stage of my Perl programming expierence, had vulnerabilities. The code is long gone, we have replaced it with a commercially developed software set called ISPPower, now called Inovaware, it is extremely powerful, but comes with a huge learning curve, big price tag, and difficult documentation. I believe they have a Unix version.

    I think the Volkswagon analogy is good, you have a long row to ho. You will save your self lots of time by calling existing Unix scripts if it is safe to do so. Yoda
Re: Perl ISP management.
by toadi (Chaplain) on May 16, 2001 at 15:44 UTC
    Maybe look into some existing software. There are lot's of these utilities out there!!!

    But don't expect to write this application in a short time :)

    --
    My opinions may have changed,
    but not the fact that I am right

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://80757]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (4)
As of 2024-04-24 19:50 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found