I moved hosting to AWS. Did it work?
I have some Crossbeam X80 hardware running R67 VSX for some virtual firewalls. Life is good and everything worked fine. I planned and executed an upgrade plan for these blades to move to Checkpoint R77.10 VS. The policy upgrade process and software upgrade process went with zero errors. When we tried to push the policy to the firewalls, it would fail. The errors, during a debug, were ambiguous at best.
What was the eventual issue? CIFS Resources with greater then 25 file shares. It seems the IPS in R77 has a hard limit of 25 shares in CIFS resources. We use CIFS resources as an extra level of protection when 3rd Parties access our Windows File Shares.
Most of our CIFS resources had less then 25 file shares, so they needed no change. But, a single 3rd party accessed quite a few shares. So, the revert back to a straight CIFS service group on these rules and removal of the CIFS resource in the firewall policy allowed a successful push of the policy to the gateway.
NOTE TO SELF: Keep that one in your back pocket.
I recently had to upgrade an R70 Checkpoint firewall to R77.10. Due to a variety of issues, this required a nuke and rebuild of the firewall via USB key to upgrade to R77.10.
The upgrade went fine, but during testing the firewall passed no traffic. This was an unusual config, the internet service was a PPPoE connection.
After a fair amount of troubleshooting went into this problem. It wasn’t until a fw ctl zdebug -m fw + drop command was run that the problem become obvious. The following error was displayed:
;[fw4_0];fw_log_drop_ex: Packet proto=6 126.96.36.199:10002 -> 188.8.131.52:80 dropped by cphwd_offload_conn Reason: VPN and/or NAT traffic between accelerated and non-accelerated interfaces or between non-accelerated interfaces is not allowed;
A quick look on Checkpoint’s Support Site gave us Solution ID: sk79880.
Kernel debug shows (fw ctl zdebug -m fw + drop) that traffic is dropped:
‘… is dropped by cphwd_offload_conn Reason: VPN and/or NAT traffic between accelerated and non-accelerated interfaces or between non-accelerated interfaces is not allowed’
No fix is required; the system is functioning as designed.
SecureXL does not support Point-to-Point interfaces (PPP, PPTP, PPPoE). In case a PPP-interface is detected, SecureXL disables itself on that interface (hence the name ‘non-accelerated interface’).
Refer to the following note in any ‘Performance Pack Administration Guide’ (R65, R70, R71, R75, R75.20, R75.40, R75.40VS, R76):
Note: Performance Pack is automatically disabled on PPTP and PPPoE interfaces.
If a connection is detected, which flows through even one such non-accelerated interface, and this connection is NATed and/or sent over VPN, it will be dropped, because SecureXL is not able to handle it: because of NAT (Client Side or Server Side) and/or VPN, some connection parameters are not available – SecureXL is not able to determine how to pass such connection.
- Change the rulebase, so that the problematic connection is not sent through such non-accelerated interface(s).
- Disable NAT on the problematic connection.
- Change the rulebase, so that the problematic connection is not sent over VPN.
- Disable SecureXL completely (via ‘fwaccel off’ command and via ‘cpconfig’ menu).
We disabled SecureXL and had no problems since.
For those of us with a fairly new home, wired smoke alarms are the norm. A wired alarm acts in a similar fashion to battery smoke alarms. The big difference between the two is the fact that they get power from an AC source (like your main power feed/breaker box) and they have a shared wired connection to all alarms that allow them to communicate to each other. This shared connection allows a single alarm to signal the rest of the devices to alarm as well. From a safety perspective, this whole-house notification is a great safety feature.
Most wired alarms also have a 9V battery backup in case of loss of power. In all cases, the traditional low battery “chirp” that all alarms feature will take place at 2 AM, like mine did last week.
I removed the alarm, removed the battery and went back to sleep. The next morning, during my attempt to replace the battery in the alarm, I read the fine print on the back of the device.
Manufactured 10/2001, Expires 10/2011.
That’s right, my alarms have been expired for over 2 years! To be honest, I didn’t even know smoke alarms did expire, only that the batteries needed to be replaced. So, I began the research on suitable replacements.
My current alarms were the Kidde Model 1275. These were basic alarms, with ionization sensors and a rear battery door. There are two types of sensors in smoke alarms, ionization sensors and photoelectric sensors. I’m not going to dig into the pros and cons of each sensor, the Underwriters Laboratories have done that for me. Read until your heart is content. I wanted to purchase a Kidde unit again, because they would share the same wiring harness with my old devices.
After much research and two calls to Kidde Customer Service with questions, I decided on the Kidde KN-COSM-IB Hardwire Combination Carbon Monoxide and Smoke Alarm with Battery Backup and Voice Warning as well the Kidde i12080 Hardwire Smoke Alarm with Exit Light and Battery Backup. Here is why:
- Carbon Monoxide is the leading cause of accidental poisoning deaths in North America. It is odorless, tasteless and invisible – it’s a silent killer. The only safe way to know if carbon monoxide is present is to install carbon monoxide detectors on every level of your home and in sleeping areas. The Kidde KN-COSM-IB Hardwire Combination Carbon Monoxide and Smoke Alarm with Battery Backup is a great solution for this problem.
- Kidde recommended that I do not install a CO alarm in the room where my heater is installed, which in my home is the finished basement. This is because there is some amount of CO during the combustion process for the home’s heater. Not enough to kill you, but enough for the alarm to sound. So, a normal smoke alarm should be installed in these locations where CO is expected. The Kidde i12080 Hardwire Smoke Alarm with Exit Light and Battery Backup was my choice.
These alarms and not expensive and the upgrade to CO detection is worth the extra cash. For under $200, I was able to replace all the smoke detectors in my home. I noticed the Amazon delivery took place today, so I think I know what my weekend is going to look like!
I have been experiencing a high number of brute force attacks on the admin pages of some of my WordPress blogs. Generally, I don’t worry too much about this. I utilize multiple levels of security controls to prevent access to the admin sites, but the increase in bandwidth and load on my system during these attacks was a concern and I wanted a clean way to prevent it from happening.
I looked into some type of WordPress Plugin to stop the attacks, but I soon realized it wouldn’t stop my main concern, the bandwidth and CPU load the attacks caused. I wanted a reactive, IP address block against the offending systems. I already used Fail2Ban for SSH, FTP and other types of brute force attacks. Why can’t I used Fail2Ban for WordPress logins as well?
I did some searching and found the following web site that gave me the base for my filter and jail configs (Check that site for all the technical details, I won’t steal directly from him). But, there were some problems that I had to customize to get it work for on my site.
First, the configs mentioned do not use my preferred method of blocking access, IPTABLES nor does it send an email when a IP is blocked. Second, my hosting server is using cPanel as a management system and it uses multiple access log files for all the different sites.
First Problem — Using IPTABLES and sending email alert
Here is the way I edited my /etc/fail2ban/jail.local file to support the changes I wanted to make. The most important addition I have is the action line that lists iptables-multiport. This blocks the IP at the TCP/IP level, never letting them touch the server again during the ban time. In addition, I added the sendmail-whois line to the action to get the email out the door. (Note, items in <> were removed by me to prevent private data from going public)
# Added for WordPress Brute Force
enabled = true
port = http,https
action = iptables-multiport[name=Wordpress, port=”http,https”, protocol=tcp]
sendmail-whois[name=Wordpress, dest=<email>, sender=fail2ban@<host>]
filter = apache-wp-login
logpath = /usr/local/apache/domlogs*/*.*
maxretry = 10
bantime = 86400
findtime = 120
Second Problem — Supporting cPanel multiple log files
As listed above, the logpath command is a tricky one. Fail2Ban wants a direct path to the Apache access_log file. Since I use cPanel and it splits out each host/site with it’s own log file, it was tough to set this up. I could have manually entered each log file. But, this would have required me to remember to add the log file in for each new host. By using the logpath line item as listed, I was able to monitor all the log files in the directory, all the time.
logpath = /usr/local/apache/domlogs*/*.*
And that’s it! I modified the maxretry and bantime (10 attempts and 24 hour ban time) to my preferred settings, restarted fail2ban and tested. Success!
My deck is raised off the ground by about 4 feet and there is an above ground pool built into the deck. Every spring and every fall, I struggle to close the pool. The big headache is securing a tarp to cover the pool.
When I had pressure treated decking, I would just screw some hooks into the decking and use some bungee cords to secure the tarp. I recently replaced the pressure treated boards with composite decking. There is no way I’m going to drill holes into my beautiful boards!
So, I’ve struggled with securing the tarp. I attached bungies to the railing, I secured it through the boards under the deck, you name it. All of these solutions took time, effort and were simply not easy. I had to find a better way!
I heard about these DeckKeeper Tie Down devices from Ask This Old House a few years ago. They slip between the boards, include bungee cords to attachment and protect the surface of the deck. I bought them from Amazon and closed the pool this fall using them. What a difference! I secured the tarp in the a few minutes, I didn’t have to crawl under the deck. At only $20 for 4, not a bad deal.
We had a fun little gotcha a few weeks ago while upgrading a Crossbeam X80 CPM from XOS 9.5.X to 9.6.6. As part of security controls we have in place in the perimeter, we implement MAC address filtering on the border switches. We implement very basic ACLs for the MAC addresses.
mac access-list extended mac_gi26 permit host 0003.d2e0.0101 anyinterface GigabitEthernet0/26 switchport access vlan 901 switchport mode access mac access-group mac_gi26 in spanning-tree portfast
So, post upgrade to XOS 9.6.6 we lost access to many of our zones that previously worked. After some digging around, we noted that the MAC addresses on the Crossbeam NPMs changed post upgrade. This change was not noted in the Release Notes (at least I couldn’t find it).
The good news is that Crossbeam allows for the manual changing of MAC addresses on the X-Series Platform. A simple change of the MAC address cleaned everything up.
[no] mac-addr <MAC_address>
I was asked to assist on setting up a Site-to-Site (S2S) VPN between an Amazon Web Service AC2 environment and a Cisco IPSEC router. Instead of working on the customer’s production environment, I decided to setup my Cisco 2821 router as an IPSEC endpoint and try to do it from home. There is a fair amount of instructions on the internet on how to do this. But, it seems no matter what I tried, I wasn’t able to get it to work. The biggest hurdle was the fact that my Cisco IPSEC router was behind a NATing firewall. Please note, the IP addresses have been changed on my example to some randoms.
I relied heavily on this post titled CONNECTING TO A CISCO ASA VPN VIA AMAZON EC2/VPC to get the basis on how to do this. It took me about two days to get everything the way I wanted it, so I’m going to tackle the instructions on my own as well.
Here is a quick and dirty diagram:
Start a Amazon VPC Instance
- Go to the VPC tab.
- I chose a Ubuntu 64 Bit AMD64 server, micro instance.
- Click Network & Security –> Elastic IPs
- Allocate New Address, associate the new address to the new micro instance.
- I didn’t setup the Amazon firewall initially.
- Test SSH into your instance, you should get a UNIX prompt.
Before you begin installing and configuring your Cisco device or Openswan, you need to gather some information:
Private IP: 10.96.42.55
Elastic IP: 184.108.40.206
Private Network: 220.127.116.11/24
Router Public IP: 192.168.1.5
Firewall Public IP: 18.104.22.168
Install and Configure Openswan
- From the command prompt, run sudo apt-get install openswan openswan-doc ipsec-tools
- Edit /etc/sysctl.conf:
net.ipv4.ip_forward = 1
- Run sudo ipsec verify (note any issues)
- Edit /etc/ipsec.conf
- Run sudo ipsec verify (all issues should be resolved or have N/A,WARNING)
- Run sudo service ipsec restart
Edit /etc/ipsec.d/home.conf (new file)
Edit /etc/ipsec.d/home.secrets (new file)
192.168.1.5 22.214.171.124 : PSK “cisco123”
Configure the Cisco Router
crypto isakmp policy 10 encr 3des hash md5 authentication pre-share group 5 lifetime 3600
crypto isakmp key cisco123 address 126.96.36.199
crypto ipsec security-association lifetime seconds 28800
crypto ipsec transform-set AMAZON-TRANSFORM-SET esp-3des esp-md5-hmac
crypto map INTERNET-CRYPTO 11 ipsec-isakmp description Amazon EC2 instance set peer 188.8.131.52 set transform-set AMAZON-TRANSFORM-SET match address 111
interface GigabitEthernet0/0 ip address 192.168.1.5 255.255.255.0 no ip route-cache cef no ip route-cache duplex auto speed auto crypto map INTERNET-CRYPTO
interface GigabitEthernet0/1 ip address 184.108.40.206 255.255.255.0 duplex auto speed auto
ip route 0.0.0.0 0.0.0.0 192.168.1.1
access-list 111 permit ip 220.127.116.11 0.0.0.255 host 10.96.42.55
- I setup my home router/firewall to create the 192.168.1.5 IP address as a DMZ. This means that I didn’t need to setup any type of port forwarding or firewall rules, it was forwarding all traffic from my external IP address to the internal IP address. Your mileage may vary.
- Note the “right” and “rightid” calls in the home.conf file. right=external IP at home, rightid=actual Cisco router IP. This is important. Because I was behind a NATing firewall, these settings came into play. IPSEC doesn’t play very well in NAT and even though I was using NAT-traversal, those settings were key.
- This was just a simple IP to network test. You’ll need to modify the ACLs as appropriate to access your devices.
- I had a devil of a time matching the isakmp policies and transform-set settings on the Cisco with the Openswan. Both platforms use different terms for the same thing. Some commands to know and love:
- Openswan — sudo ipsec auto –status
- Openswan — sudo ipsec whack –status
- Ubuntu Logs — /var/log/auth.log
- Cisco — debug crypto isakmp
- Cisco — debug crypto ipsec
- Cisco — debug crypto isakmp error
- Cisco — debug crypto ipsec error
My Harmony 620 has been struggling lately. The LCD screen completely died and the button have not been as responsive as they used to be. So, I jumped on the Logitech web site to see what they had to offer.
The Harmony Touch was released on October 1, 2013 — just 10 days before my search. But, at $250, it was a pricey clicker to say the least. I thought about getting the Harmony One remote but at $200, it wasn’t much of a downgrade in price. So, off to Newegg I went and bought a new Touch.
When the box arrived, it’s a behemoth. You can see the packaging stealsa lot of queues from Apple’s. The boxes are thick and sturdy. The directions are quick and to the point and the device is presented in a very simple plastic cradle.
I plugged the charging base into the wall (yay! no more batteries) and let the remote charge overnight. The next evening, I went to MyHarmony.com, installed the necessary software and plugged the remote into my laptop.
As a prior owner of Harmony remotes, I knew what to expect. This was my first time using MyHarmony.com. My previous two remotes used the thick Harmony software that installed on my laptop. Both the MyHarmony site and the Harmony software are pretty straightforward My biggest complaint with the software is that you could not use multiple remotes under a single login. So, since I had two remotes, I had to remember two logins. With the MyHarmony this limitation is removed.
Setting up my devices in MyHarmony is really easy. You enter in the brand name and the model number of every device in use. After the site knows all the devices that are in use, you setup all the Activities. I have a fairly limited number of devices but they do some fairly complicated things.
Here is my hardware:
- Cable Box
- Remote Camera Receiver (we have a camera installed in my sons room so we can watch him)
Here are my activities:
- Watch TV (TV, Receiver, Cable Box)
- Listen to Music (TV, Receiver)
- Watch my Son (TV, Receiver, Remote Camera)
MyHarmony goes through a very brief question and answer session for each activity and programs the remote for the activities The Watching Music and Watching my Son activities presented some minor problems for the software as the settings to bring these actions to live are not default standard But, since I have some known experience with my other two Harmony remotes, I was quickly able to customize my remote to do exactly what I want and programmed it without issues.
I’ve now been using the remote for about a week and there are things about it that I like and things that I don’t.
Things I like:
- My favorite part of my Harmony remotes is the design. They have a dog-bone shape to them where your hands fits perfectly inside the thin part of the remote. Your thumbs, for the most part, can reach all the import buttons with ease. The Harmony Touch is similarly shaped to my previous remotes, with one big improvement. It has a slightly grip material where your hand sits that really feels nice.
- Touch Screen
- The touch screen with the icons is very similar your SmartPhone screen. It’s fast, responsive and very slick. The Favorite icons you can setup make it very easy to jump from channel to channel. This has shown to be a great benefit to my 3 year old son. He knows what the channel icon is for Disney Junior and he just clicks and it’s on. No numbers, no guide.
- DVR Button
- Finally, a DVR button. Both other remotes did not have this and I was always too lazy to program one. So, I ended up just clicking menu, and finding the DVR selection under there.
Things I don’t like:
- Touch Screen Location
- Yes, I said I liked the touch screen and I do. The problem is the location. It’s smack in the middle of the remote. So, the common buttons like channels, volume, DVR, menu, Guide are at the buttom of the remote near your thumb. This is a great spot. Right above these common buttons is the touch screen. Above the touch screen and at the top of the remote is the Play/Pause/FF/RR buttons used for DVRs/DVDs. So, everytime I want to skip commercials, pause the TV or play, I need to slide my hand to the top of the remote. This was not the case with my other remotes and for me this is my biggest complaint.
- $250? Are you shitting me? I’m glad I have a nice wife.
- No number pad
- This isn’t 100% accurate. There is a number pad, but it’s built into the touch screen. So, it takes a click or two to bring it up. I understand the need to consolidate and improve, but I miss my number pad.
- No keyboard
- My Vizio TV has lots of neat-o applets that run things like Twitter and Pandora. They require input for the username and password only once and then they are saved. Most of the time. Every once in a while, my SmartTV decides to be dumb and forget everything I taught it. I then need to input all my logins again, via it’s onscreen keyboard. I usually end up digging out the Vizio remote which has a very slick slider keyboard built in.
Overall, it’s a nice remote. It’s very snazzy, has a cool touch screen and the MyHarmony site is probably easy and workable for most situations. Is it worth the price? Nah, that’s a serious premium for a remote control. Most folks that want a easy to use, functional remote would be perfectly happy with the $50-$100 device that Logitech makes.
It has been widely reported that Kodak is going to exit the camera, camcorder and digital frame business. I’ve long ago moved to my Nikon DSLR and have not used a Kodak brand camera for a number of year. I didn’t think much of Kodak’s demise because it was just another example of a thriving company unable to adapt to the changing world of technology. (See also RIM, Newspapers and the recording industry)
It wasn’t until I was brushing my teeth the other day that I was reminding of that quality product Kodak made, especially in the digital world. I was once the proud owner of a Kodak DC290 digital camera. This thing was a hulk and at 2.1 megapixels, my camera phone has a higher resolution. But, that didn’t stop it from taking some damn good pictures. It is a shame such a grand company is going down in flames in such a spectacular way. I was never much of a film photographer. I owned my share of the cameras, but my skills could never justify the cost of developing and I quickly lost interest. With digital, the devices were able to make my mediocre shots looks great and throwing away the hundreds of junk shots for the nice ones was cheap and easy. The Kodak DC290 did an excellent job of this.
Why was I reminded of this while brushing my teeth? Because two of my favorite pictures ever taken, shown below, were taken with the DC290. They currently hang in my bathroom and I get to look at them everyday. I took then while on a trip to San Francisco, driving north on the Pacific Coast Highway. I stopped to stretch my legs on the side of the road and this is the beauty that awaited me.
It is likely that Kodak will become a bankrupt patent holding company, suing other companies that were able to survive and prosper in this digital age, into oblivion. I’ll still browse through my old shots taken with my DC290 and remember with fondness the pictures it took.