Colgate University Training

How is it already the end of November..? I wanted to set aside time this morning to write about my experience at Colgate University a few weeks back before I turn around and it’s suddenly 2018! After the Reclaim trip to NYC, Jim and I traveled to Hamilton, NY for a two-day training session with members of the Learning and Applied Innovation Team and IT Department. But before getting into the content summary– you can’t talk about Colgate without first mentioning the campus. There’s a reason it makes the list of most beautiful college campuses in the states; it really is stunning. My photos throughout this post will hardly do it justice, but I’m including them anyway. 🙂

On day one, Jim and I met early with folks over coffee & bagels. Jim then began the first block by speaking on how DoOO came to be and how it has transformed over the last few years. I’ve heard this talk a handful of times now, so I was able to see past the initial content and focus on how I would approach a similar talk with my own twist. I’ve been shadowing Jim over the last year or so with the idea that I’ll eventually be able to give these talks & trainings on my own, so it felt good to find the headspace to think through some of that.

Next, Jim and I moved into an overview of the Domain of One’s Own platform, bringing everyone up to speed on how WHM, WHMCS, and WordPress work together. Jim gave an introduction to the system, separating out the ‘need to know’ items from the ‘you’ll never really use this’ functions. From there I gave a more detailed outline of WHMCS & WHM and began to walk through the platforms in depth before lunch. We picked up where we left off after grabbing a bite to eat with more hands-on practice in WHM/WHMCS. Similar to one of my sessions during Workshop of One’s Own, we worked through common support troubleshooting fixes, user FAQ’s, and approaching support tickets. We also talked through setting up site syndication, domain transfers and even touched briefly on SPLOTs. And just like that, day one had come and gone.

We spent the bulk of day two feeling out the needs and curiosities of those in the room, focusing heavily that morning on relevant ways to use WordPress, Omeka, Scalar & Drupal. It was cool to watch the team brainstorm and think through ways that their community could take advantage of these tools. I love using slavery.georgetown.edu as an example of an integrated domain for this sort of discussion. Georgetown takes a controversial topic and faces it head-on using WordPress for the main domain and Omeka for the archive. They also embed a historical timeline using Timeline JS, so that’s always a great piece to show as well. We also used Keys to Directing as a great Scalar example, Making Modern America for an Omeka Archival site, and Andréa Levi Smith’s course website for showing how DoOO can be used in the classroom.

Andréa’s site was a great segway into where we spent the majority of our time that afternoon: SPLOTs! Her site was built off a template created by Alan Levine called SPLOTPoint. I wrote more about the excitement of the Colgate Team + SPLOTs here, but it was fun to feed off their ideas and play around with these templates in real time. And as Jim discusses here, we found that one of our most valuable moments of the workshop was narrating our thought process of familiarizing ourselves with these templates on the spot. I had never worked directly with the templates that Alan had created, so I was the perfect guinea pig. 🙂

left: SPLOTPoint template; right: Big Picture Calling Card template

I installed the SPLOTPoint template on the big screen (on this example domain) while everyone followed along on their own computers. After tweaking settings and customizing that for a few minutes, we moved onto another SPLOT created by Alan called Big Picture Calling Card (on this example domain). I was asked to narrate my thought process for finding settings/making customizations on the theme & template which led to an hour-long discussion on the future and potential of Domains at Colgate.

This trip was valuable to me personally for many reasons. I felt more confident during the technical training portions of the workshop, compared to scenarios where I’ve shadowed Jim in the past. I also felt capable of carrying my own weight and truly tag-teaming the workshop with Jim, as opposed to interjecting every now and again. Jim also offered his critiques, strategies, and advice for talking at great lengths about Domain of One’s Own (a skill he, no doubt, naturally found) so that was immensely helpful as well. And lastly, I discovered a passion for SPLOTs. I was able to see the true potential of installatron templates during the discussions over those two days, and am very much looking forward to their future in Domain of One’s Own and beyond.

Workshop Clip: DNS

Clip from my session on DNS during day one of Reclaim’s Administrator Workshop. During the 45-min talk, we covered DNS basics, types of DNS records and how to edit them, handy DNS tools & strategies, and frequently asked questions.

If you missed the workshop clip on Supporting DoOO, you can find that here.

Documentation guides that I wrote for this talk are linked below:

DNS Full Category
DNS Summary
Handy DNS Tools
DNS Frequently Asked Questions
Editing DNS Records in cPanel
Editing DNS Records in WHM

Sharing SPLOTs Between Servers

During a recent trip to Colgate University (another post on that coming soon), Jim and I had a chance to meet with folks on the ground floor and discuss their visions for Domain of One’s Own at their campus. By the afternoon of Day 2, we were focusing pretty heavily on SPLOTs, a concept developed largely by Alan Levine and Brian Lamb. (He talks about them in depth here.) Though this is hardly a new topic of discussion, its brand new for this little web space so I’ll go ahead and explain: A SPLOT, or Smallest Possible Learning Online Tool, is essentially a template that can be added to a fresh WordPress installation. Think of it like importing demo content with a new WP theme, but it’s done automatically when you install WordPress. So for folks that have never used WordPress before, splots are a helpful starting point. They allow users to see the potential of their WordPress site before even beginning.

Here are a few examples of splots that Alan created, taken from our Demo server, StateU.org:

^Each splot is actually an individual install of WordPress aimed towards different uses: portfolios, course sites, class collaborations, archives of writing, etc. He configured each WordPress install with different sets of themes, plugins, images & dummy text, setting customizations, and pages & posts. Once complete, we were able to ‘save’ the install as a template that other users can see at the point of install. Below is a screenshot of a WordPress installation page where the user could install a number of templates or continue with a clean WordPress dash:  Read more

Workshop Clip: Supporting DoOO

Clip from my session, Supporting Domain of One’s Own, during day one of Reclaim’s Administrator Workshop. During the 45-min talk, we cover strategies for approaching support tickets, user FAQ’s, and common errors.

Now I realize you can’t really see the screen in this video– oops. Hoping we’ll be able to fix that for next time! Still wanted to share this clip as I think it does provide useful information & discussion for DoOO admins.

Documentation guides written for this portion of the workshop are linked below:

Supporting DoOO Full Category
• Fix for Changing Site URL in WP Dashboard
Approaching a Support Ticket
Unblocking/Blocking an IP in CSF
Common Troubleshooting Fixes
HTTP 500 Errors
Understanding .htaccess
Fixing Permissions

Fall 2017 DoOO Workshop

Workshop of One’s Own, Reclaim Hosting’s first administrator-focused intensive workshop, has come and gone. And I don’t use the word “intensive” lightly here- it was a dense two days, packed with information that would make even the most qualified admin exhausted, but was amazingly helpful nonetheless.

For this workshop, the Reclaim team really wanted to focus on creating an initial knowledge base of documentation that speaks directly to the Domain of One’s Own administrator. While the DoOO Community Forums can be helpful for certain categories, and there’s a template of DoOO support docs floating around for the community, we felt that there really wasn’t a source for administrators. We realize bringing Domain of One’s Own to a school can feel like a massive undertaking in itself, so if we can help even just a little bit with the onboarding process for new admins, then we’ll consider that a win!

So that was the mindset going in: a workshop for folks that would land somewhere between the Reclaim team coming to the university for in-person training, and the new admin putting in countless support tickets with us as a form of learning. Since this was a new event for us, we reached out to folks personally that we thought might benefit from the training. Though the attendees came from an array of backgrounds, titles, and experiences, we were really pushing to get people that, at the bare minimum, had experienced DoOO at their school for a couple of months. That way they had some familiarity with the platform, had time to come up with questions & knew in advance where their school wanted to take the project.

Jim talking through the three systems that make DoOO.

On Thursday morning, the first day of the workshop, we met folks at Reclaim’s office in Fredericksburg, Virginia. We introduced (or in some cases, reacquainted) ourselves over Panera bagels, and then jumped right into a platform overview at 9 am. Understanding how the platform works and being able to conceptualize how the three main pieces work together is crucial for supporting a community, so we felt like this was a strong start to the workshop. And as Meredith mentioned in her post, having only 6 attendees quickly made the environment feel intimate and comfortable.

I loved the “hands-on” feel. Notice Tim Clarke in the back writing on our feature request wall!

After the first session, Tim & Jim took the folks through an in-depth look at WHMCS (client manager) & WHM (server side). The initial homepages of these tools can feel quite intimidating if you haven’t worked with them before, so this felt like the natural next step in the itinerary. In WHMCS, the two covered ‘active’ vs. ‘pending’ orders, deprovisioning accounts, email templates, account ownership, creating Admin roles, and understanding logs & general settings. In WHM, Jim & Tim discussed settings in Installatron, hosting packages, account management, cPanel feature manager, addon domains, storage quotas, and changing domain names. Whew- what a list!

From there I spoke about the actual supporting of DoOO. We’ve learned from early on that Domain of One’s Own is nothing without people that use it, so understanding how to support the community is well over half the battle. I have videos of the talk that I’m currently working to get online, so those should be coming along soon. I covered strategies for approaching a support ticket, top 5 most common support requests & their fixes, unblocking IP addresses in WHM, .htaccess files, HTTP 500 errors, and quick database fixes.

Somehow in the mix of topics and sessions, we were able to fit in a quick lunch– courtesy of Chipotle. :) (Group order links FTW!)

Day two of the workshop was probably my favorite– we picked up right where we left off, continuing to talk through support scenarios by discussing hacked websites and how to clean them up and prevent them in the future. Tim walked folks through strategies, tools to use, and necessary steps to take. I summarized his talk in my blog post, Workshop of One’s Own: Notes on Hacked Site Session.

Meredith talking to attendees about Domain Transfers.

After that, Meredith spoke on Migrations, Transfers, and Databases. Quite the feat for someone who just joined Reclaim full time in September! She discussed migrating folks to a Domain of One’s Own platform, transferring them off DoOO after graduation, requirements for domain transfers, EPP codes, the lifecycle of domains, the importance of database migration, nameservers, and domain privacy.

Before lunch, I jumped into all things DNS, continuing the theme of supporting Domain of One’s Own. DNS has always felt like a hefty topic for me, so I only covered relevant content regarding the projects of those sitting in the room with us. We explored what DNS actually is and does, types of DNS records, how to edit records from WHM & cPanel, and common DNS errors and fixes to be aware of. I’m hoping to get the video of this session up shortly as well!

With Benny’s Pizza as fuel, Workshop attendees were given a ‘breakout room’-like puzzle during their lunch break. The group had to work together to solve a pretty involved support ticket with fixes that were covered over the last day and a half. They were given 3 escalations or ‘lifelines’ where they could submit a support ticket to ask the Reclaim team for help, but only ended up using 1 lifeline. It was awesome to watch them work together, and to hear their thought process for finding solutions. Everyone had come to the table with different levels of understanding and experiences, so they were able to play on each other’s strengths and weaknesses. When all was said and done, the group of 6 solved the ticket in under an hour by: editing DNS records, correcting a .htaccess file, manually turning off a faulty WordPress plugin, installing an SSL certificate, and editing database files to fix a broken WP dashboard. Not too shabby!

By the afternoon on day 2, everyone was feeling pretty drained but motivated for the last stretch of the workshop. I continued with a discussion about Exit Strategies for graduating students, and spoke on handling migrations, deleting old accounts, and the instructions to give students. From there, Tim conducted the last formal session of the workshop by talking about the potential of APIs in a Domain of One’s Own instance. It was nice to switch gears from more of a formal training of ‘how-to’s’ to an overview of ‘here are things that you could be doing’ approach. He talked through WHMCS hooks, taking advantage of cPanel features without accessing the cPanel interface, additional APIs in Installatron, and different API tools.

The last hour of the workshop was left for an open discussion- we answered any outstanding questions that had arisen, and then tackled more user/project-specific requests.

All in all, it was a jam-packed, successful event. We’re hoping to do these workshops regularly- potentially once a semester- and are so thankful for the folks that decided to come out and help us kick it off. The Reclaim team has already agreed that future workshops should include more interactivities besides the group lunch event on day 2, as they really do help liven things up and allow the group the opportunity to apply what they learned. And though we did take frequent breaks, I’m thinking future events should require additional stretch breaks, or potentially an activity or two where they have to stand up and walk around the room. (Haha!) Regardless of how helpful it can be to dive into dense tutorials on the big screen & follow along on computers, I think we could have used more reminders to get our blood pumping.

Whew! If you’ve made it this long, thanks for reading! Be on the lookout for future Workshop events at reclaimhosting.com/workshop.

Workshop of One’s Own: Notes on Hacked Site Session

Reclaim Hosting put on its very first 2-day Workshop for Domain of One’s Own admins on November 2 & 3. The following post is a summary of the first session from morning 2 of Workshop of One’s Own.

3 STAGES:
Identifying a Compromise
Cleaning a Hacked Site + Scanning Tools
Preventing a Hacked Site

Identifying a Compromise

-Checking Apache Status in WHM- the request column
-Visit the site. Worth noting that a site can load perfectly fine even if it’s hacked.
-Connect to the site via FTP, look for files that have random names
-Process Manager in WHM & kill processes
-Email Queue (Mail Queue Manager + ConfigServer Mail Queues)- check if the account is throwing out spam; delete the entire queue. Won’t stop spamming, but clears the slate.
-Are there any strange additional users in the database?

Cleaning a Hacked Site

-Clean up tools that don’t care about the application in question
-Completely delete wp-admin & wp-includes, and every other generic WordPress file besides wp-config or .htaccess
-Remove any injected code if needed for wp-config or .htaccess
-Reupload fresh copies of all plugins & themes installed; have a conversation with the user about what they need, premium plugins/themes
-Check wp-content>uploads for .php files. You should never see any .php files there!
-Grab a clean copy of WordPress, skipping over wp-content
-After you’ve done what you can, take a back up of it.
-Restoring a backup is always an option if the user hasn’t made any changes
-Recycle account passwords

Scanning Tools

-The first line of defense: Linux Malware Detect; can be installed on the server and managed through terminal. This is free, open-source software that quarantines hacked files. You can set a cron job that runs daily. Historically, this doesn’t detect everything but is a great start & preventative measure.
ConfigServer Exploit Scanner– commands in WHM to run scans; great search features; tons of options for different scans

Preventative Measures + Good Practice

-WordPress plugin: Wordfence; free and premium version
-CXS Watch in WHM; checks for any changes across any account, could have false positives so that’s something to be aware of
WPS Hide Login WordPress Plugin
BitNinja; distributed firewall on all of Reclaim’s servers
-Keeping WordPress plugins & themes up to date

DNS Intro

Humans are better with names than they are with numbers. If I want to visit a specific website on the internet, I’d rather remember the domain name attached to the site (reclaimhosting.com) as opposed to the IP address of the server where the site lives (162.243.224.94).

However, computers are better with numbers, not names. So we have to find something that translates domains to IP addresses and vice versa. We do this with DNS, which stands for Domain Name System. Just as it sounds, DNS is a protocol for names of systems.

So when I type reclaimhosting.com into my web browser, I’m asking a resolver, or query participant, to send out a DNS query. What exactly is a DNS query? Well, it could look like one of two things:

•A recursive query asks the DNS server, “Can you look for the IP for me and report back?”
•An iterative query says, “if you can’t find it, send along the next place I should look. I’ll keep looking until I find an answer.”

Once the end DNS server receives the query, it sends a “hey, I’m over at this IP address!” message back to my browser. At that point, the translation is over and the browser communicates using just IP addresses from that point on.

DNS works by holding individual records. Records are simply single mappings of between a domain location and a server. (If we’re using the “your domain is your house” metaphor, a record would be a single direction to get to your house.) While there are dozens of record types, some are way more common than others. Here are the most common DNS records that you may deal with in a Domain of One’s Own instance:

A Record: This is your pointer record– kind of like speed dial for a host. It’s the most common DNS record and is used to point a domain/subdomain to an IPv.4 address.

AAAA Record (“Quad-A Record”): This is essentially an updated version of the A record built primarily for the IPv.6 address. So an A record is hardly wrong, but if both the A record and the AAAA record exist, the network will prefer the AAAA record.

CNAME Record: (Canonical Name) This record allows you to refer to a location by more than one name. A CNAME is used to map an alias to a domain name. Ex: mapping the subdomain ‘www.’ to the domain it’s associated with.

MX Record: (Mail Exchange/Mail Exchanger)- The MX record is built to identify mail services; it specifies what server is responsible for handling email associated with the domain name. If there are multiple mail servers available, you can prioritize your records.

NS Record: (Nameserver) Helps identify other nameservers in the DNS hierarchy.

TXT Record: Just that- a text record is used to store additional information.

An in-depth overview of DNS Concepts, terminology, etc can be found here.

Approaching a Support Ticket

This blog post is for Domain of One’s Own support admins.

At first glance, no two support tickets look the same, which means that the process for finding a fix always looks different as well. That, mixed with a combination of vague errors & a broken dashboard can make any admin who believes he/she to be well-versed in technical domain support of any kind to feel less than adequate.

So when you’re faced with an error you’ve never seen before and aren’t sure where to turn, use the following checklist:

  1. Make sure the user’s IP isn’t blocked in CSF.
  2. Rule out the probability of a DNS resolution, Browser cache, or Network Cache Issue.
  3. Use the Error Log to eliminate the possibility of a theme and/or plugin confliction.
  4. Fix Permissions on the cPanel account.
  5. Check .htaccess files & Apache error log.

^In almost all cases, the fix can be found by starting with one of the above. If, however, you’ve made it through the list and you’re still unsure, you can always escalate the ticket to Reclaim’s support team with the following information:

  • Contact information for the user in question
    • first + last name, email address, domain name, user’s IP address
  • Screenshot of the error
  • What the user did to receive the error
  • When the issue first occurred
  • The steps you took to provide a fix

Post Icon Credit: “Support” by Gregor Cresnar from the Noun Project

Fixing Permissions

Fixing permissions of Files and Folders in an account can be a helpful step in troubleshooting a web error of your own, or someone else’s support request. Reclaim Hosting has Apache software on all servers, both Shared Hosting and Domain of One’s Own, to run behind the scenes and handle all content on the server. The software’s job is to accept requests from clients and then send responses to those requests. Apache receives a URL, translates it into a program or file name, executes it, and then sends it back to the requester. If Apache can’t complete this process, it throws an error (discussed in depth in other posts).

Sometimes permissions to handle these requests may be set too openly, which can also cause Apache to send an error to the user. All Reclaim users technically are permitted to reset their own permissions, as Reclaim servers have a shell script located at /root/fixperms.sh– this will fix permissions in the cPanel automatically (this includes all directories, not just public_html). To fix permissions on a specific account, run the following command:

sh fixperms.sh -a cpaneluser

^Make sure to replace cpaneluser with the cPanel username of the account you’d like to fix.

If you’re only really needing to fix permissions on a single directory, not the full cPanel account, navigate to the top folder in terminal and run the following commands:

find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;

^Please note that these commands should never be used at the root of an account, but always in public_html subfolders.

Transferring Account Ownership

Occasionally we’ll get support tickets asking us to transfer the ownership of a hosting account and/or domain. This is common if leadership positions change within an organization, or if the student running a club website on a DoOO instance is graduating. The admin process for transferring ownership is essentially the same regardless of your setup:

  1. Make sure the new user already has an account. If this is on a shared hosting server, you can manually create the account for them, or ask them to sign up for an account. If this is Domain of One’s Own, the new user will have to have previously logged into your DoOO environment at least once (they don’t need to signup, but just log in). If the new user already has an account, you’ll need to give them a reseller account in WHM.
  2. In WHMCS search for the hosting account that you’ll be associating with a new user. Go to the Product/Services tab and click Move Product/Service.

Read more