, , , , ,

cPanel Minimalism

We recently migrated UNLV’s faculty websites to a Domain of One’s Own environment. I learned a lot during that migration which in turn helped motivate me to finally clean up the bavatuesdays multi-network site I’ve been putting off for over a year. Well, dabbling a bit every morning last week and yesterday, that is officially done. All sites on the bavatuesdays domain have been migrated and archived—I can take a short break before going after the jimgroom.net network. 

In the mean time I have been working on a talk for OER18 wherein Tim and I will be talking about hosting beyond the LAMP environment. Applications that run in other server environments that require Node.js, Ruby, etc. would be nice to offer, but integrating them into cPanel is not necessarily easy. I played with hosting Jekyl from a Reclaim account, but that does require a bit more command line work—which is often a non-starter. But alternatives to cPanel such as Cloudron that allow you to spin up containers that seamlessly manage the application’s server requirements, so all you are doing is choosing a domain to run it on. But we have also been playing with integrating SPLOTs more seamlessly into Reclaim’s offering, so there are several options, rather than any one way forward. Not to mention, cPanel and CLoudLinux are both working to make it easier to run Node.js and Ruby apps in their environment, so it may not necessarily be beyond LAMP at all—but rather within or alongside.

All of this brings me back to UNLV’s Faculty Sites, which have really paired down cPanel to the absolute minimum: WordPress, the file manager, and backups. That’s it. Minimalist, faculty can choose between WordPress or a DIY old school HTML site using the file manager to upload files (or FTP). It does kind of beg the question that I hear all too often about it being overwhelming, or there is too much to learn. No, it’s pretty much your own instance of WordPress, and those little files known as HTML (and a few links) that made the web possible. So, the future is as much within a LAMP environment, as it is beyond LAMP. 

,

Documentation April

Over the last couple of weeks, I’ve made it my mission to build on, add to, and update documentation articles at Reclaim Hosting. This was inspired after our last Workshop of One’s Own event when attendees asked what other schools had done to tweak and add to their DoOO projects. How were schools changing their homepage? How were they handling community support? How were they handling graduating students and their data?

I created a new category on the Workshop of One’s Own Documentation called Customizing your DoOO. This topic is still very much a work in progress, but my goal is to make this a full list of everything that can be safely done or added to a DoOO instance without fear of “breaking the system”. It will include everything from different pages and elements that we can add to a DoOO system, to editing a Domain of One’s Own WordPress theme.

One of the most common “extras” that DoOO schools ask for is the Templated Community Documentation. These are articles written specifically for the students and faculty using Domain of One’s Own. They were written originally by the OU Create team, and were later shared and expanded at other schools. So when new schools start a DoOO Pilot and ask for this documentation, we would copy from one of these existing schools to the new school. This was hardly a bad system, but it’s always bothered me a little bit that we were handing off documentation with another school’s logo on it. It just doesn’t scream “here’s your fresh copy”.

And since every DoOO Project looks a little different, the documentation will look a little different as well. For instance, we have some schools that buy top-level domains for all users and give them access to everything that the default cPanel provides. By contrast, other Domain of One’s Own schools only support WordPress, and have stripped the cPanel down to the very basics. So what may be true for one school may not be true for another. In addition, Reclaim underwent a pricing change a couple of years ago for shared hosting plans & top-level domains to accommodate for ID Protect. What’s more, when software upgrades take place, screenshots need to be updated. And plugins that were relevant 2-3 years ago may now be abandoned by their developers.

I mention all of the above to show that there are clearly a ton of outliers that can lead to a miscommunication and/or change in documentation. So it was time that Reclaim Hosting took ownership of the existing documentation to create a centralized hub of always correct, always up-to-date information. That way any school writing their own docs can always look back at this resource and pull articles that are relevant to their specific projects.

For instance, the team at emerson.build wrote a great article on getting up and running with the Neatline plugin in an Omeka instance. We get questions about this plugin all the time at Reclaim Hosting, so I’m thrilled for finding it! But it also helped reiterate this very real theme surrounding documentation: we need to do more sharing as a Domain of One’s Own community, and Reclaim Hosting needs to help facilitate that. I’m sure there are plenty of schools that would benefit from that Neatline article as I have, so now they can find that article, along with a compiled list of others on State University’s new documentation site: stateu.org/docs

Which brings me to my next point: If you’ve written documentation for your DoOO community, you may receive an email from me in the next couple of weeks asking for permission to add your article to the main hub. You’ve been warned. :) Alternatively, if you’ve written articles that you think would be a good addition to this main list, please contact me!

And while I’m on the subject of creating documentation, I can’t write this post without mentioning the recent work that Chris, Reclaim’s intern, has been doing for the Reclaim Youtube Channel. We’ve been working together on prioritizing videos that Reclaim needs in terms of tutorials, and he’s created some really great stuff so far. (Examples: Easy Site Cloning with Installatron, Backup Tools, & Adding WordPress Themes and Plugins)

His most recent tutorial, and easily my favorite video so far, is Understanding FTP, Part 1. (Part 2 will be on troubleshooting FTP!)

 

You can find these video tutorials on Youtube, of course, but also embedded in their corresponding written articles on Reclaim Hosting’s main documentation site.

,

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