I've been using Courier MTA since I first started using Linux almost 9 years ago (a good friend of mine turned me onto it over sendmail.) For about the past 3 years or so I've been using ClamCour with ClamAV to protect my users, and myself, from email viruses and worms. This has been working great, until just recently. Changes in the Debian Courier packages seem to have broken ClamCour for good, while ClamCour is being maintained outside of Debian and has had releases subsequent to the 2.2 release seen on Debian systems, the package has been abandoned. If I were more comfortable with my Linux skills, I'd probably have seen if I could update the ClamCour package with the latest release and compatibility with the newest Courier MTA. But, I'm not that skilled, yet.
So I turned to my trusty sidekick, Google. I quickly turned up an article from 2004 on using Perl, Courier, and ClamAV. For historic reasons I've never had clamd installed, though there have been times that I've realized I should probably switch. So I immediately decided to use Method 2, which was labeled as not requiring clamd. Turns out this isn't true anymore, but it got me started. So without further ado, here's how I setup Courier::Filter on my Debian machine.
First install the necessary Debian packages:
# apt-get install courier-filter-perl libmime-tools-perl libclamav-client-perl clamav-daemon
While libmime-tools-perl and libclamav-client-perl are not required for courier-filter-perl, they are required in order to use Courier::Filter::Module::ClamAVd. Next edit /etc/courier/filters/pureperlfilter.conf and the following line after the Sample declaration:
Courier::Filter::Module::ClamAVd->new(),
Your modules section should look something like this:
modules => [ # Sample declaration: #Courier::Filter::Module::Header->new( # fields => { # 'list-id' => '', # subject => qr/duell?ing\s+banjoe?s?/i # }, # response => 'Oh no, not those dueling banjos again!', # trusting => TRUE #), Courier::Filter::Module::ClamAVd->new(), ]
Lastly we need to symlink the pureperlfilter (the Courier::Filter documentation calls this courier-filter-perl) in our /etc/courier/filters/active and restart the Courier filters.
# cd /etc/courier/filters/active # ln -s /usr/lib/pureperlfilter # courierfilter restart
That's it, you should now have antivirus protection on incoming and outgoing mail. Hope this helps someone.
Of failing Power Supplies apparently.. I've had 3 power supplies go out on me this week alone. So far I've been able to replace them, but I don't have any more extra power supplies.. In fact I ended up stripping my FreeNAS server down to hard-drives and cd-rom because all I had left was a tiny 200W psu. So to conserve power (cause you never know how much you're actually using, unless you're using too much) I pulled *everything*. In fact if I hadn't of booted and stayed up for the last 12 hours I would have pulled the CD-ROM too :D Luckily that was not needed.
What really kills me though is the Enermax NoiseTaker II that I had. Enermax has a 3 year warranty on their PSUs. It died yesterday with a loud pop, and then everything died. So doing my due dillegence I lookup the RMA info, (which is where I find out about the 3 year warranty.) I knew it had been purchased at NewEgg, so I look up the invoice. I'm not kidding here folks, the fan was bought 28 May 2005. It died almost exactly 3 years to the day after it was purchased! Coinkidink? I say No! This is a global consiparacy! It's just my PSU was defect and died before the warranty expired instead of after. ;)
So wanting to get my full $160US worth of PSU out of Enermax, I filled out an RMA request last night and sent it off. Let's see how that one plays out :D
One a differant note, classes are finally over. My GPA took a pretty good hit this semester. What's interesting is the class I thought I was getting a B in (Teaching Social Studies to Secondary Students) I got a C, and the class I thought I was getting the C in (Educational Literacy) I got a B.. Would have been happier with 2 B's but... One more semester to go...
If you know me, you know I love Google, and I mean love with the funny <3 and everything! But there comes a point where <3 turns into >_< and for me, it's about that time! Okay, so Google Apps is awesome! The problem is that with Google Apps I have 4 different Google accounts that I need to check, 3 Google Apps accounts and 1 Google account. It's really annoying! I'd be happy to forward all my mail to one account, but it's not that simple. Well, I guess it kind of is, you can set the Forward and Delete option, but why? Why why why why why? The reality is I wanted to get rid of my Google account and just use my person Google Apps for Your Domain account, but then I have to create a whole new Google Account and what not. It's all very disappointing if you ask me.
What really upset me is that if you sign up for Google Mail it's an automatic Google Account, but not so if you have a Google Apps account, you can't use Google Apps accounts to sign into Blogger without setting up a seperate Google account using the address from your Google Apps account. Why the extra step? It don't make no sense to me. But I'm not Google, and in their inifite wisdom they must see something I don't. I still <3 Google, just not as much today as other days ;)
Also, why can't I have aliased domains for email work for everything? Why don't the custom URL's apply to all domains on an account? Currently I use a Apache mod_rewrite script with a default virtual host to handle that kind of stuff, but shouldn't that work out of the bag? Shouldn't I be able to make mail.blah.com and mail.blah.org both work the same? Google, don't you love me anymore? I really must be missing something.
P.S. It took me quite a while to make all the Google's pretty looking, yes, I'm bored as usual.
On a completely seperate note, I think I'll start posting what I'm doing for my Student Obeservation, it'll be delightful. Should have started a couple weeks ago, had a fight in the classroom. Exciting stuff!
Labels: Computers
It's hard to look over my past at times. I'm not the same person that I used to be in many ways. As a continuously evolving being, I'm never the same person I was when I decide to look back at my life.
It all started with my little program to import exported data into Blogger. Merely by its creation I necessitated a look into my past, as I've written about it on my various blogs and websites going back to December 7, 2000. First off, it's scary to think that I have records going back that far, but I do ;-) Mostly thanks to the wonder that is the Internet Archive.
They filled in most of the early missing stuff, but unfortunately I don't think I'll ever get it all back. Anyway, I read over some of the things that I wrote and wonder to myself what I was thinking at the time. So now I have a dilemma. Do I post it all and hope people can sort out the truth for themselves, or do I not. Do I move forward without looking back (any more than I already have I guess.)
On a lighter note, here's Devon, playing in one of his favorite places, the dog's kennel. Yep, he knows how to open the door all by himself and manages to climb right in and play with anything or nothing (as is the case here.) Gotta keep the kid enterainted somehow I guess ;)
Labels: Computers
As you most certainly would have to notice by being here, the blog has moved. Actually almost all my stuff has moved to using Google Apps, which has pretty much everything I need, mail, website, blog (okay not officially part of Google Apps but still), and calendar. Basiclly Google owns me ;-) All my pictures are on Picasa, my mails on Gmail, my videos are on YouTube(, except one I uploaded for a friend to Google Videos as it was 15 minutes long...) and lastly my blog is obviously here. If Google goes south, I'm screwed. Though their stock prices don't seem to be headed any direction but up so..
So any techy person may wonder how I got all my posts/comments from ExpressionEngine onto Blogger. It was easy I tell you, okay, that's a slight lie ;-). I wrote a custom application that uses XML file definitions to read text file exports of posts. It uses Google/Blogger's Data API to post the stories to Blogger. Comments are done the same way, but due to restrictions in the API you can't post anonymously and so all imported comments are tagged to the blog owner (hence the "Posted By:" at the end of the comments.) Published dates are persevered for both comments and blog stories. HTML has to be stripped from comments which makes thinks a little interesting, but workable. The last thing it does it write an htaccess file of RewriteRules to forward all the traffic. Pretty complete solution if you ask me ;)
The application itself isn't very pretty, but it's usable, by me anyway. I might stick it up later so others can take a peak and try and use it. Anyway, couple more days in Utah, staying with the in-laws until the first of the new year.
Grade reports so far for Fall 2007 semester as follows:
Yugoslav Wars - A
Intersection of Race, Class, Gender,and Sexuality - B-
Intermediate Japanese I - C+
Waiting on a grade for America Sees Red and then I'll post an updated GPA graph, though I'm projecting that I finally broke the 3.0 barrier! w00t w00t!
As you may or may not know I work for a local retailer of satellite and high speed internet services here in Boise. As such I get cool information on all the happenings with DISH Network, DIRECTV, etc. Anyway, while reading through some of the latest material from DISH Network I stumbled across the fact that DISH Network is implementing HDCP on all their DVR products. According to the FAQ about it from DISH:
Why did this happen?
As you may know, piracy has become a global issue in the movie industry. In an effort to improve the security of movies on DISH Network, we have recently added some copy protection to HBO and Cinemax services.
The idea of the copy protection scheme is that you can only have 1 copy of any protected show. That 1 copy can be “moved” to a HDCP compatible device, but not copied. So you can “move” an HBO recording to your PocketDISH, but it will delete the show off your DVR. Or if you have an HDCP compatible DVD burner, you should be able to “move” the show to DVD, but, again, it will be deleted off the DVR. Seems to work, however there are 2 issues that I can see:
1) Content moved to the PocketDISH can not be moved back to the DVR. So if you want to watch it on your pretty HDTV, better break out your PocketDISH’s AV cable, which is composite, and hook it up. Quality goes down. Yay!
2) Once it’s on the PocketDISH, you can connect those same AV cables to anything you want, including, *gasp* a DVD Recorder or, if you really want to go old school, VCR!
Oh-noes!
All of the sudden my 1 copy on the DVR has become however many copies I want it to be. Or, even more unthinkable, connect it to a Composite-to-Stereo plug convertor for audio, and a TV Tuner card that accepts a line in, and record it that way. Who cares!
Okay, any recordings like that will not be of the same quality as the original, but still watchable for most people. Also, it just goes to show that the system is broken. The PocketDISH is just one example of that. Burn it to DVD and then rip the DVD. There is no such thing as only 1 copy..
Enough of this MPAA and all you other peoples out there. Stop making my life more difficult, as you aren’t stopping the pirates! You’re just pissing me off!
Labels: Computers
I realized today I really don’t talk much anymore. Not as in speaking but here. That’s because I really don’t do much any more. I still admin my sites, litb, boxshots, and that’s really about it. I spend most of my time reading news and my favorite and only subscribed to comic. Other then that I’m being a big bum.
School’s the major reason, I just feel like I have no time. It’s 11:45PM right now, I’m falling asleep in my chair, and I’m taking what little time I have to say I don’t have any time. I’m not sure if that’s ironic or just pathetic, maybe a little of both. Most of my personal projects have gone down in flames and up in smoke. I jsut don’t have the time for them. Sleep, School, Work, find time to do homework, that’s my schedule. And don’t forget falling asleep in the computer chair. Barely have time for the kids.
Caleb is taking “beautiful” pictures with my new-to-me Samsung slider phone which model escapes me at the moment. Maybe I’ll put them up, good luck making any of them out :D Anyway, I’m exhausted…
Labels: Computers
p3scan. Great idea! We’ll use it to stop all viruses from coming into the corporate intranet! It’ll work. Now do it.. Wait, you need a static SMTP smart host but your pop3 needs to be transparent. HAH!
Okay, it’s not that bad. In actuality I just ended up creating a p3scan-smtp.conf file and a second init.d script that load p3scan with that configuration file. Run it on a differant port, redirect smtp requests there instead of the transparent p3scan and WALA! A working email scanner with transparent pop3 (and eventually if they ever release the next version, imap) support and a smarthosted, but transparent to the user, smtp host. Work’s great when your company uses an ass of an ISP like CableOne, or any other ISP that blocks port 25…
Now if only I can figure out why clamcour/clamav does not seem to be catching the latest Email-Worm.Win32.Bagle.gt… Maybe I need the daily.cvd, I don’t know
Labels: Computers
So I’ve been playing with the firmware on my Actiontec GT701-wg from qwest. Tweaking settings while it’s running and what not. Well, I’m tired of doing that, I want it to startup with my settings so I’ve been doing some research. Lots of information on these. So I did my reading, and quickly ran into a problem. I could extract the SquashFS image from the recovery zip, but squashfs-tools on Debian was too new. Apparently you can’t uses SquashFS 3 tools to make a SquashFS 1 filesystem. So I had to get mksquashfs for SquashFS 1. Luckicly sub.st had a mirror for squashfs 1.3r3, the last SquashFS 1 release.
Compiling it was going to be it’s own headache though. In the end I had to install zlib-bin, zlib1g, and zlib1g-dev (thanks HyperWRT) as well as gcc. Then I had to edit the source in 2 locations because gcc4 did not like the assignment statements.
mksquashfs.c line 433
inodep = (squashfs_reg_inode_header *) inode= get_inode(sizeof(*reg) + offset * sizeof(unsigned short));
was changed to
inode = get_inode(sizeof(*reg) + offset * sizeof(unsigned short)); inodep = (squashfs_reg_inode_header *) inode;
mksquashfs.c line 490
inodep = (squashfs_symlink_inode_header *) inode= get_inode(sizeof(*symlink) + byte);
was changed to
inode = get_inode(sizeof(*symlink) + byte); inodep = (squashfs_symlink_inode_header *) inode;
Everything compiled and as far as I can tell I have a working mksqaushfs 1.3r3
Labels: Computers
Just installed a Bluetooth “radio” USB device with the WIDCOMM drivers. Lo and Behold it decides I need a “My Bluetooth Places” icon on my desktop. Evil software. So after some searching I’m noticing that the way to remove it is either (1) install TweakUI or (2) delete the registry key.. Well, that sucks.. I don’t wanna install tweak UI and deleteing the registry key causes other problems..
So I did some poking around.. There’s an easier fix that doesn’t requie TweakUI or deleting any registry keys. All you do is tell the registry to hide the icon. Simple enough really. So, now the icon is gone, Explore My Bluetooth Places works, and I’m happy..
See the rest of the story to get the registry file..
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\CLSID\{6af09ec9-b429-11d4-a1fb-0090960218cb}\ShellFolder] "HideOnDesktopPerUser"="" [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons] [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu] "{6af09ec9-b429-11d4-a1fb-0090960218cb}"=dword:00000001 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel] "{6af09ec9-b429-11d4-a1fb-0090960218cb}"=dword:00000001
Copy that into a text file, rename it something.reg, double click to import. Then either log off and back on, or right click on your desktop and select Refresh. Or you can just download the reg file in a pretty zip file. The log off/on or refresh part is up to you
Labels: Computers
Ever had those times when you thought you had something to say only to realize you were speaking nothingness? Yeah, today is one of those days. So if anyone reads this, I apologizes ahead of time. It’s kind of just getting typed as it flows and so if it’s disjointed, it’s on purpose, coherence is an accidental bi-product of an imprefrect approach.
Working on a project in my spare time. Writing my first Windows Service in C#. It’s actually a dynamic domain updater for EveryDNS a service I have been using for quite some time (years I think.) Ran into a few problems, for example they don’t allow you to update multiple domains at the same time even if you want them pointed at differant addresses (don’t ask.) So anyway, I had to implement a completely pointless 4 minute delay between differant domain updates so as to properly allow each domain to be forwarded. Only this creates an issue if you have multiple domains pointed at one default location and a single domain pointed somewhere else (as I did..) so, the solution? None currently. Create another account and buy a new domain for it I guess.. Still a sucky solution. I need to talk with Ed at everyDNS and see if I can get them to updated the update server to accept an array of domains or something........
I haven’t started working on either of my projects for school at this point. That’s probably a bad thing. And to say I hjaven’t worked on them at all would be lie. I just haven’t put as much time into them as I probably should have to this point. I will fix that shortly.
For the My Lai Court Martials I think I will look into the actions of the President in commuting the sentance of the one man found guilty in the precedings. Why? Was it merely public opinion that drove the President’s actions? Re-election? What made the President take pity on a man who was using the same defense as the Nazi soldiers used right after WWII (following orders)? It doesn’t make sense to me, I thiknk I’m missing something.
For my Living Religions class I think I’m going to look at Martin Luther and the 95 Theses. Why? Because I’ve never really looked at them before. I like to think I know what was going on and what Martin Luther was attempting to do, but my knowledge is based on 2nd hand accounts of what happened. I’d like to look at it more closely. Pete sent me an idea of looking at the Eastern Orthodox Church, not a bad idea either, I just had already turned in my proposal If I don’t get very far though, the Professor has said we have the option to change our topics, so we’ll see how it goes.
Jen say it’s time to go get lunch at the SUB so I guess I’m done. More coherent than I thought it would be.
Labels: Computers
Alright, I’m slacking, I know it. But that’s the way it goes. Just trying to play the “stay caught up” game in my classes. So far so good. Though I did end up dropping my Comparative Politics course, 15 credits was just a little more than I could handle for the time being. So now I’m down to just a 12 credit course load, and not complaining too loudly. I do have to figure out what the heck I’m going to do for my Living Religions research project and paper. Got my assignment for Introduction to History on Monday, I will be researching and writing a paper on the My Lai Court Martial. Picked the topic myself, though I’m not entirely sure as to why ot what specific aspect of it I will look at. Kind wish I would have gone for the Adolf Eichmann trial, but turns out someone else wanted that one too so I likely would not have gotten it anyway. So where does that leave me otherwise? Not entirely sure. I’m just kind of hanging out, doing lots of homework and trying to get enough sleep. That last part is very important and I’ve slept like crap lately. Nothing too new going on.
Going to try and setup a FreeNAS server this weekend (hopefully)… Maybe stop by OfficeMax see if they have any of the 50% off drives mentioned on slickdeals left. Haven’t been any one woot lately, though I did buy a wireless network range extendor/print server/router the other day, $40, not to shabby.
I think that’s everything I have for the time being. Get more, pay less or something like that.
For 2 reasons today is a good day.
1) I just finished my final project for my History class for the summer. Still have to take the final, but I’m done with class. I’m expecting a C, which is sad really, I could have gotten an A, but I blew off a couple of the assignments, not something you can do in a summer course. Having it online didn’t make it any easier for me though. I much rather perfer in-class classes.
2) I got my version of VirtuaNES with 7-zip support working :D That means ROMs compressed with LMZA can now be extracted natively in VirtuaNES instead of having to use IZArc‘s archive conversion stuff. It was actually an easy patch. I found 7-zip32.dll after doing a couple days worth of searching. It was actually a search for the function names I saw in VirtuaNES that lead me to it. There are a few of these compression libraries that have very similar named functions for messing with archives, I’m guessing so programs can more easily use more libraries, but none the less. After getting some of the other libraries and watching how it worked it was fairly simple to get 7-zip32.dll to work. Only major problem: documentation is all in Japanese. To translate it I had to stick the text file documentation into google to get the correct characters back, then into Babelfish to get a rough translation, just using one of them never worked, weird. Anyway, that gave me a rough idea on how the library worked, but I couldn’t get it to extract the libraries. It kept saying “Don’t open [archive here] file.” Like it was a virus or something :D Anyway after a little more googling I found this post about getting the dll to work in mame. I made one simple change to my code (removing a space after the -o in the command line) and badda boom, badda bing it worked. Fun stuff!
So until that gets put into mainline VirtuaNes (I submitted an email to Norix with a unified diff) I offer the world my compiled VirtualNes.exe (and in case you don’t have them, the archive DLLs that will work with it.)
VirtuaNES Executable Only (replace current executable): VirtuaNES.zip
Archive Extraction DLLs: VirtuaNES-ArchiveDlls.zip
Diff Patch File based on 0.93e sources: patch-virtuanes7z.txt
Full Source with Changes to compile on Visual Studio 2005: virtuanessrc093-7z.zip
My borg designation is 2 of 7. My parents raised me LDS, but I'm atheist. My wife loves me, my kids think about it. My dog thinks I abandoned her and sleeps on the couch.
The Daily WTF
Boobs, Injuries, & Dr. Pepper
The Hull Story
xkcd
AppleGeeks
Digg
Gullible.info