New Group Sales Application for Bogus Basin

Boise-based MATRAEX to Develop New Group Sales Application for Bogus Basin

12 June 2018 (Boise, Id.) — Matraex, Inc. (https://www.matraex.com), a Boise-based software and application development company, announced its most recent project with Bogus Basin Recreational Association, Inc. (https://www.bogusbasin.org) to develop a custom website application for Bogus Basin’s Life Sports and School Night programs. The website application will help Bogus Basin coordinate and manage school group functions. The project is expected to be completed in September 2018 in anticipation of the 2018-19 ski season.

“We are thrilled Bogus Basin selected us to help streamline their processes as they move forward in their quest to be one of Boise’s premier winter and summer group destinations,” said Michael Blood, President of Matraex, Inc.

According to Molly Myers, Group Sales and Event Coordinator at Bogus Basin, the website and application will replace a legacy application they have used for more than 15-years. The new site will update and streamline the booking process by providing a single repository for group information and eliminating multiple communication channels where mistakes can occur. In addition, it will ensure that information flows to the correct departments for accurate fulfillment of each group’s needs.

“Having a streamlined system that’s uniquely tailored to our needs is very appealing,” said Myers. “Anything that supports a fun and efficient visit to Bogus Basin in the long run aids in our goal of making lifelong skiers and snowboarders.”

School groups that participate in Bogus Basin’s Life Sports or School Night must provide a lot of information about the students when booking, including:

  • Group size
  • Age, height, weight and shoe size of each participant to ensure sufficient, well-fitting rental equipment
  • Ski ability levels for each group member so that appropriate ski instructors are available
  • Special needs or requests

The website application will have additional benefits for Bogus Basin, including the ability to track, process and report financial information for internal use.

Matraex’s work with Bogus Basin will also incorporate other group offerings, such as bookings for the new “Glade Runner Mountain Coaster” attraction and other “Fun Zone” activities.

The Matraex website app is projected to go “live” in September 2018, just in time for schools and other groups to book their group ski trips for the 2018-19 ski season.

About Matraex, Inc.

Matraex, Inc. is a Boise-based software and application development company. The company has served a number of local and national organizations, including the Better Business Bureau, Hewlett Packard, Madison Square Garden, Penn State University and the Idaho Hospital Association. Their services include custom designed mobile applications (iOS, Android, etc.), as well as website development and management.

About Bogus Basin Recreational Association

Bogus Basin Recreational Association, Inc. is a 501(C)(3) non-profit organization dedicated to accessible, affordable and fun year-round mountain recreation and education for the Treasure Valley Community.

For more information, please visit https://www.matraex.com or call Michael Blood at (208) 344-1115.

Matraex – GDPR Data Processing Addendum

Earlier Today Matraex announced an updated Privacy Policy.

Now, we announce that our GDPR Matraex – Data Processing Addendum.pdf template is available to our clients and customers.  This means all of our US based clients that work with Personal Information of European Economic Area (EEA) citizens, can fill out the agreement and submit it to Matraex and keep our Service Agreements compliant with the GDPR.

The DPA also includes EU Model Clauses, which were approved by the European Union (EU) data protection authorities, known as the Article 29 Working Party. This means that Matraex customers wishing to transfer personal data from the EEA to other countries can do so with the knowledge that when Matraex processes the subject personal data it will be given the same high level of protection it receives in the EEA.

  • This announcement is important to our previous customers,  we are able to provide followup work on their existing software which interacts with EEA personal data.
  • This announcement is VERY important to our existing customers, it provides assurances that Matraex can continue working with their applications and services which process EEA personal data.

Each Matraex customer using processing EEA personal data will need to have a data processing agreement to comply with GDPR.  Previous, existing and new customers are asked to download and read the agreement and fill out the requested information. While the entire agreement is important to read and understand,  certain areas require input:

  • Enter your company information on Page 2
  • Have a company authority execute the agreement on Page 5
  • Enter the Member State your business is established in on Pages 10 and 11
  • Enter the “Categories of Data” which will processed on Page 12

Please contact us directly to assist in filling out the information,   when ready, email it to legal@matraex.com so we may review it,  and counter sign it.

Matraex executes a Data Processing Addendum with each of our clients that process Personal Data in the European Economic Area,  this allows us to be in compliance with GDPR and other privacy laws,  as well as with our own Privacy Policy

Privacy Policy Updated

If you have an email account,  there is a good chance that it has been filling up with Terms of Service and Privacy Policy updates over the last two weeks.

I am sure you have read them all and you understand that the EEA’s GDPR goes into effect today – May 25, 2018.

Matraex is similar to many of these companies and we have updated our Privacy Policy to comply with GDPR.

  • Our policy is easy to read with a Summary at the top and the Full policy beneath
  • Our policy is a single document rather than a maze of links
  • Our policy applies to all personal data

Matraex is also Very Different than most of the companies you have seen emails from.

  • Matraex builds the software for the companies subject to GDPR
  • Matraex maintains and enhances the software for companies subject to GDPR
  • Matraex is subject to GDPR as a Data Importer and Data Processor on behalf of our clients,  (others are Data Controllers and Data Processors)

As a third party Data Importer and Data Processor GDPR requires that our policies must also govern our data responsibility between our parties by entering into a Data Protection Addendum (request an addendum here)

In the process of putting GDPR together the EEA has defined quite a bit of vocabulary to help define responsibility in handling Personal Information Data – check out this glossary of GDPR terms to help define some of the terms I used above

To discuss any privacy, GDPR or custom services please contact us.

1.4 billion email accounts compromised

The list of websites that have been hacked is growing, and it is VERY likely that every one of us has been affected.

Hackers have always compiled, sold and distributed a list of breached accounts, but in December 2017 researchers saw an unprecedented list show up on the Dark Web.

A hacker assembled 1.4 billion compromised email address and credentials into a very organized list. The hackers provided tools to quickly search, sort and add to the list.

The compromised accounts were from many recent hacks including LinkedIn, Equifax and Uber. To see an updated list of hacks, refer to the Wikipedia article.   https://en.wikipedia.org/wiki/List_of_data_breaches

The 42 GB list is currently shared on many Peer to Peer networks and it can be found by anyone that truly wants to.

Matraex researched this list and developed a Hack Check app at hackcheck.email to allow users to check whether they are on the list.

If you are a business with multiple domains and you need assistance researching how they were affected,  contact Michael Blood at 208.344.1115 x 250

Bridgepoint engages Matraex to create FrameTurn SAAS

Bridgepoint has engaged Matraex to build the FrameTurn SAAS product they plan to launch to the Optometry Industry.

FrameTurn is a dynamic product which helps small, medium and large Optometry clinics optimize the sales mix of their retail offerings to improve sales up to 30%.

Matraex, Inc is a Boise Idaho applications development company specializing in bringing custom business offerings to market.

 

The right app partner

The right app partner can change everything.

We have built many of the apps that your employees already know and love to use. With mobile and cloud apps it’s easy to integrate into your existing workflow, which means there’s no need to change how you already work to unlock efficiency.

Meet the worker bot.

An app can empower employees to produce more, faster, by offloading routine processes onto worker bots. A worker bot is a software process that handles chores for you.

A worker bot may also route information into disparate systems. Integrating your customer relationship management software with your Quickbooks installation has never been easier.

Now with worker bots and smart integrations, employees can stay productive and also monitor the small things that lead to huge savings.

When employees are unencumbered by simple tasks or data collection, they’re not just happier, they’re more engaged and more productive.

New ways to make an impact at work.

Today’s business world has never been more mobile. So we create apps that give employees everything they need to be productive, wherever they are. Your app may be customized to fit the precise needs of your business, or perhaps it is extended to fire an alert when some process falls out of variance.

Improving customer service may mean a more timely response, or having access to the manufacturing or shipping data from your mobile. Matraex integrates systems to make your sales and service teams more nimble.

The world’s experts are also our partners.

To help give your employees and customers the best app experience, we’ve engaged some of the world’s leading technology companies. Whether you are looking for a cloud hosting platform, backend system integration specialists, or mobile network services, you’ll have access to experts around the world you can work with and learn from.

At Matraex, our core is developing smart solutions for business. We build core infrastructure that creates recognizable returns. Is it time for us to help you elevate your business?

COMMANDDUMP – Monitor File for error – Ding if found

An Elusive error was occuring that we needed to be notified of immediately.  The fastest way to catch it was to run the following script at a bash command prompt so that when the error happened the script would beep until we stopped it.

while true; do ret=`tail -n 1 error-error-main.log|grep -i FATAL `;if [ “$ret” != “” ] ; then echo $ret; echo -en “\0007”; fi; sleep 1; done

COMMANDDUMP: postfix – explore and fix spam clogged mailq at the command line

  • SystemA is a postfix mailserver
  • SystemA receives all email messages sent to @domain.com
  • All @domain.com messages are forwarded to a Gmail Account remote.user@gmail.com.  (a catchall alias)
  • when spammers saturate @domain.com gmail starts defering emails and the server becomes plugged waiting to forward the emails

450-4.2.1

The user you are trying to contact is receiving mail at a rate that prevents additional messages from being delivered.  Please resend your message at a later time. If the user is able to receive mail at that time, your message will be delivered.

List the email addresses that were originally sent to with the number of times each.

ServerA>for fl in `mailq|grep remote.user@gmail.com -B4| awk '$1 ~ /^[A-Z0-9]+$/{print $1}' `; do grep original_recipient "/var/spool/postfix/defer/${fl::1}/$fl" ; done|awk -F= '{print $NF}'|sort|uniq -c | sort -n

Delete from the mail queue all email messages sent to a specific user

ServerA>for fl in `mailq|grep remote.user@gmail.com -B4| awk '$1 ~ /^[A-Z0-9]+$/{print $1}'`; do grep original_recipient=honeypot@domain.com -l "/var/spool/postfix/defer/${fl::1}/$fl" ; done|awk -F/ '{print "postsuper -d "$NF}'|bash
ServerA>#OR
ServerA>grep original_recipient=original_recipient=honeypot@domain.com /var/spool/postfix/defer/ -rl|awk -F/ '{print "postsuper -d "$NF}'

Delete all mail messages from ‘Maria*’

mailq |awk '$1 ~ /^[A-Z0-9]+$/'|awk '$NF ~/^Maria/{print $0}'|awk '{print "postsuper -d "$1}'|bash

 

Proftpd PassivePorts Requirements (or Not Working)

After an exhaustive research session attempting to enabled Passive FTP on a Proftpd server I found and am now documenting this issue.

PassivePorts is a directive in Proftpd.conf to configure proftpd to use a specific set of ports for Passive FTP –   You would the allow these ports through your firewall to your server.

The documentation on the full configuration and reason that you would use Passive vs Active FTP,  and how to set it up on your server and firewall are beyond the scope of this document but I a couple of links that might get you there are here.

In my first attempts I was attempting to use the port range between 60000 and 65535,  the firewall ports were forwarded,  and things did not work

  • PassivePorts 60000 65535

So I had to dig in and find the details of why not,   I enabled debugging on filezilla and ran at the command line in order to try and see what was happening

  • proftpd -n -d30

I found a post somewhere that explained how I could read the response to the PASV  command,

  • Entering Passive Mode (172,31,10,46,148,107)

These last two octets in the response are the port number that is to be used  here is how you calculate it (148*256 +107)=37995.    Even though I had the server setup to use PassivePorts 60000 – 65535 it was still attempting to use 37995.    Once I figured out how to confirm which port was being sent,  I realized that the issue was not a firewall or other problem, but rather something in the system.

I happened across a Slacksite article which helped me find this in the Proftpd Document

PassivePorts restricts the range of ports from which the server will select when sent the PASV command from a client. The server will randomly choose a number from within the specified range until an open port is found. Should no open ports be found within the given range, the server will default to a normal kernel-assigned port, and a message logged.

In my research I was unable to find a message logged so I dont believe that a message shows anywhere,  however this article helped me realize that there may be some issue on my system which was preventing ports 60000 to 65535 to be available and I started playing with the system

  • 60000-61000 and 59000-60000 had no effect the system was still assigning ports within the 30000 to 40000 range.
  • 50000 to 51000 had the same effect

So I tried some entries within the 30000 and 40000 and I found I could consistently control the ports if I used any range between 30000 and 40000

  • PassivePorts 30000 32000 – gave me 31456, 31245, 30511,  etc
  • PassivePorts 32000 34000 – gave me 33098, 32734, 33516,  etc
  • etc

From this I figured out that I can only control the ports on this system in a range lower than the ones I was originally attempting

I did more research and found that there is a sysctl variable that shows the local anonymous port range

  • sysctl -a|grep ip_local_port_range

On my system for some reason this was set to

  • net.ipv4.ip_local_port_range = 32768 48000

I attempted setting this to a higher number

  • sysctl -w net.ipv4.ip_local_port_range=”32768 65535″

However this did not change the way the proftpd allocated the ports   only the lower range was available.   Perhaps I could have set the variabl in sysctl.conf and restarted,  but I stopped my investigation here.  Instead I changed the firewall rules to allow port 32000 to 34000 through and I stuck with the configuration

  • PassivePorts 32000 34000

What I learned from this was:

PassivePorts only suggests that your system use range of ports you specify,   If that range is not available the system quietly selects a port outside the range you specified,  If you have problems with your FTP hanging at MLSD check your logs to verify which PORT has been assigned. using the calculation (5th octet *256 + 6th octet).