<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ryan Bell</title>
    <description>The latest articles on DEV Community by Ryan Bell (@ryan_bell).</description>
    <link>https://dev.to/ryan_bell</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3929912%2Fcf55ee33-4cb2-4c1f-be8e-0cfd2492d381.png</url>
      <title>DEV Community: Ryan Bell</title>
      <link>https://dev.to/ryan_bell</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ryan_bell"/>
    <language>en</language>
    <item>
      <title>Business continuity planning on a budget</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Mon, 20 Jul 2026 12:01:01 +0000</pubDate>
      <link>https://dev.to/ryan_bell/business-continuity-planning-on-a-budget-1aje</link>
      <guid>https://dev.to/ryan_bell/business-continuity-planning-on-a-budget-1aje</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frloi8v2p4u072soymldg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frloi8v2p4u072soymldg.png" alt="An open notebook with a hand-drawn flowchart beside a laptop and a coffee mug, suggesting a business continuity plan sketch" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Business continuity planning has a reputation for being something only large enterprises do, with thick binders and dedicated staff. That reputation is mostly wrong. The core of a workable continuity plan for a 15-200 person business is a handful of decisions made in advance, written down, and tested occasionally — not a compliance document that sits unread until an audit.&lt;/p&gt;

&lt;h2&gt;
  
  
  RTO and RPO: the two numbers that actually matter
&lt;/h2&gt;

&lt;p&gt;Recovery Time Objective (RTO) is how long the business can tolerate a system or process being down before the impact becomes serious. Recovery Point Objective (RPO) is how much data loss is acceptable, measured in time — if your last backup was six hours ago and the system goes down now, RPO tells you whether losing those six hours of data is a shrug or a crisis. These two numbers should be set per system, not as one blanket figure for the whole business. Email might have a tight RTO because the whole company stops functioning without it. An internal reporting dashboard might tolerate being down for a day with no real business impact. Setting these numbers explicitly, even roughly, turns a vague "we need everything back up fast" into an actual prioritized plan.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with what actually stops the business, not everything
&lt;/h2&gt;

&lt;p&gt;A common mistake in continuity planning on a budget is trying to protect everything equally, which spreads limited resources thin and protects nothing particularly well. A better starting point is a short exercise: list every system and process the business depends on, then rank them by what happens if each one is unavailable for a day. Systems tied directly to revenue, payroll, or customer commitments go to the top. Internal tools that are inconvenient but not business-stopping go lower. This ranking is what should drive where the continuity budget actually goes.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;List core systems: email, file storage, line-of-business applications, phone/communications, payment processing&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Assign a rough RTO and RPO to each — hours, not exact numbers, is fine to start&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Identify the single point of failure for each top-priority system (one server, one vendor, one person who knows how it works)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Budget backup and redundancy spending toward the highest-impact systems first, not evenly across everything&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The cheapest high-value fix: documented backups that are actually tested
&lt;/h2&gt;

&lt;p&gt;A backup that's never been tested is a backup you don't actually have — you have a hope. For a budget-conscious continuity plan, the highest-value spend is usually confirming that backups are automated (not dependent on someone remembering to run them), stored somewhere physically separate from the primary system (so a single incident doesn't take out both), and actually restorable, verified with a periodic test restore rather than assumed to work because the backup job shows a green checkmark.&lt;/p&gt;

&lt;h2&gt;
  
  
  The single point of failure most plans miss: people
&lt;/h2&gt;

&lt;p&gt;Technical redundancy gets most of the attention in continuity planning, but a surprising number of small business outages trace back to a single person who understands how a critical system works, with no documentation and no backup knowledge anywhere else in the company. Basic runbooks — even a simple document listing where credentials live, who the vendor contacts are, and the steps to restart or fail over a critical system — cost almost nothing to create and close a gap that a lot of otherwise well-prepared businesses still have.&lt;/p&gt;

&lt;h2&gt;
  
  
  Testing the plan, not just writing it
&lt;/h2&gt;

&lt;p&gt;A continuity plan that's never been rehearsed tends to reveal its gaps at the worst possible time. A tabletop exercise — walking through a specific failure scenario with the relevant team and talking through what actually happens, step by step — takes an hour or two and routinely surfaces problems that look fine on paper but fall apart in practice, like a backup contact who's no longer at the company or a vendor SLA that doesn't match what everyone assumed.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A workable continuity plan on a budget prioritizes ruthlessly: rank systems by real business impact, set RTO/RPO per system rather than universally, and spend first on tested backups and basic documentation — not on protecting everything equally.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;None of this requires enterprise tooling or a dedicated continuity staff member. It requires an afternoon to rank what actually matters, a backup strategy that's been tested rather than assumed, and documentation that survives a specific person being unavailable. For businesses without the internal bandwidth to run this exercise properly, working through it with &lt;a href="https://dytech.com/services/businessitsupport/" rel="noopener noreferrer"&gt;an Orlando business IT support provider&lt;/a&gt; that's done it before is usually faster than building the framework from scratch.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
      <category>webdev</category>
    </item>
    <item>
      <title>When to hire an MSP vs an internal IT person</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Thu, 16 Jul 2026 14:12:16 +0000</pubDate>
      <link>https://dev.to/ryan_bell/when-to-hire-an-msp-vs-an-internal-it-person-3b5m</link>
      <guid>https://dev.to/ryan_bell/when-to-hire-an-msp-vs-an-internal-it-person-3b5m</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqyb5a5kzou02i0ron3qh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqyb5a5kzou02i0ron3qh.png" alt="Two office desks side by side, one empty" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Every growing small business eventually hits the same fork in the road: IT needs have outgrown "whoever's good with computers handles it," but the business isn't big enough to obviously justify a full internal IT department either. The decision between hiring an internal IT person and outsourcing to a managed service provider gets framed as a simple cost comparison, but the more useful way to think about it is coverage breadth versus depth.&lt;/p&gt;

&lt;h2&gt;
  
  
  What an internal hire actually gives you
&lt;/h2&gt;

&lt;p&gt;A single internal IT hire gives a business someone embedded in day-to-day operations, immediately available, and deeply familiar with that specific company's systems, quirks, and history. For businesses with specialized, highly customized software or hardware — a manufacturing floor running proprietary equipment, a niche industry application nobody outside the company uses — that kind of dedicated, in-house familiarity can be genuinely hard to replace with an outside provider juggling multiple clients.&lt;/p&gt;

&lt;p&gt;The tradeoff is coverage. One person, no matter how skilled, has a finite skill set and finite hours. Cybersecurity, network administration, cloud infrastructure, help desk support, and compliance are each deep enough fields that a single generalist hire is rarely an expert in all of them simultaneously — a hire who's excellent at desktop support and general troubleshooting may have limited depth in network security architecture, and vice versa. There's also the single point of failure problem: vacation, sick leave, or a resignation leaves a business with a coverage gap exactly when something might go wrong, since IT problems don't pause for a single employee's day off.&lt;/p&gt;

&lt;h2&gt;
  
  
  What managed services actually provide
&lt;/h2&gt;

&lt;p&gt;A managed service provider brings a team rather than a person — meaning a business gets access to specialists across networking, security, cloud, and help desk functions rather than one generalist's best effort across all of them. That team structure also solves the coverage gap problem directly: an MSP's support doesn't disappear when one team member is out, since the client relationship is with the provider, not a single individual.&lt;/p&gt;

&lt;p&gt;The tradeoff runs the other direction from an internal hire — an MSP juggles multiple clients, so response isn't quite as instantaneous as walking down the hall to a dedicated employee's desk, and there's inherently less deep, company-specific institutional knowledge than someone who's worked inside the business full-time for years. A good MSP relationship narrows that gap over time as the provider becomes familiar with a client's specific environment, but it's a real distinction worth weighing, particularly for businesses with unusual, highly specific technical needs.&lt;/p&gt;

&lt;h2&gt;
  
  
  The factor that tends to decide it: total need versus one full-time role
&lt;/h2&gt;

&lt;p&gt;The most useful practical question is whether a business's actual IT workload adds up to something close to a full-time role, or whether it's realistically a fraction of one spread across occasional troubleshooting, periodic projects, and ongoing maintenance. A business generating close to 40 hours a week of genuine IT need — frequent hands-on hardware support, constant help desk tickets, active development work — gets real value from a dedicated internal hire whose full attention is justified by the volume. A business generating meaningfully less than that is often paying full-time-employee cost (salary, benefits, training, the risk of losing institutional knowledge if that person leaves) for a fraction of full-time need, which is exactly the gap managed services are priced to fill more efficiently.&lt;/p&gt;

&lt;p&gt;A hybrid approach is common and often the most practical answer in practice: an internal hire or small team handling immediate hands-on support and day-to-day operational knowledge, paired with an MSP covering specialized areas like cybersecurity monitoring, backup management, and after-hours coverage that a small internal team can't reasonably staff around the clock. That combination gets a business both the embedded familiarity of an internal presence and the specialized depth and continuous coverage of a dedicated provider — without forcing an all-or-nothing choice between the two models. Businesses weighing this decision are usually better served starting from an honest audit of actual IT workload and the specific gaps in current coverage than from a general instinct about which model "should" be cheaper — the real answer depends heavily on a business's specific size, complexity, and risk tolerance. Working through a breakdown of &lt;a href="https://dytech.com/orlando-small-business-it-support/" rel="noopener noreferrer"&gt;the tradeoffs between in-house and outsourced IT support&lt;/a&gt; before making the call is a reasonable first step for any owner who's still on the fence.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
      <category>webdev</category>
    </item>
    <item>
      <title>MFA fatigue and push-bombing attacks</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Wed, 15 Jul 2026 00:03:02 +0000</pubDate>
      <link>https://dev.to/ryan_bell/mfa-fatigue-and-push-bombing-attacks-3ln8</link>
      <guid>https://dev.to/ryan_bell/mfa-fatigue-and-push-bombing-attacks-3ln8</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkw1yw3ocso0l943ejecj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkw1yw3ocso0l943ejecj.png" alt="phone showing repeated multi-factor authentication push notifications" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Multi-factor authentication was supposed to be the thing that finally made stolen passwords a non-event. For the most part it has been. But attackers adapted, and one of the more effective workarounds doesn't touch the password or the second factor at all — it just wears the user down. MFA fatigue, also called push-bombing, has become a routine tactic in real intrusions over the past few years, and it works precisely because it exploits something MFA itself can't patch: human annoyance.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the attack actually works
&lt;/h2&gt;

&lt;p&gt;The setup is almost always the same. An attacker has already gotten hold of a valid username and password, usually from a previous breach dump, a phishing kit, or credential-stuffing against reused passwords. That's step one and it's the easy part — leaked credential databases number in the billions of records at this point, and password reuse across services remains extremely common.&lt;/p&gt;

&lt;p&gt;Step two is where push-bombing comes in. The attacker enters the correct credentials over and over, each attempt triggering a legitimate push notification to the real user's authenticator app: "Approve sign-in?" One notification gets dismissed without much thought. A dozen of them, arriving at 11 p.m. or during a meeting, start to look less like an attack and more like a broken app that needs to be made to stop. Eventually, often out of simple irritation rather than any real belief the request is legitimate, someone taps approve just to make the notifications end. The attacker is in, using nothing more exotic than the account's own real second factor.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why number matching changes the math
&lt;/h2&gt;

&lt;p&gt;The standard push notification — a single "approve or deny" button — is what makes this attack easy in the first place, because it requires zero cognitive effort to approve incorrectly. Number matching closes a meaningful part of that gap. Instead of a yes/no tap, the login screen displays a two- or three-digit number that the user has to read and enter into the authenticator app to approve the request.&lt;/p&gt;

&lt;p&gt;That extra step sounds small, but it changes the interaction from a reflexive tap into a deliberate action that requires looking at two screens and matching a number between them. A user who's being bombed with fake requests has to actively engage with each one rather than swiping it away, which tends to break the "just make it stop" reflex that push-bombing depends on. Most major identity providers — Microsoft Entra ID, Okta, Duo among them — have shipped number matching as a default or configurable option, and turning it on where it isn't already the default is one of the highest-leverage changes an IT admin can make in an afternoon.&lt;/p&gt;

&lt;h2&gt;
  
  
  Other layers worth stacking on top
&lt;/h2&gt;

&lt;p&gt;Number matching helps but isn't a complete fix on its own, and a few other controls are worth pairing with it. Rate limiting or automatic lockout after a handful of failed or repeated MFA prompts in a short window stops the bombing pattern before it reaches the point of user fatigue at all — most identity platforms support configuring this threshold, and it's worth checking that it's actually set rather than left at a default that allows unlimited attempts.&lt;/p&gt;

&lt;p&gt;Geographic and device context also matter. A push request originating from an unfamiliar country or an unrecognized device is a strong signal on its own, and platforms that surface that context directly inside the approval prompt — showing the requesting location and device alongside the number-matching screen — give users a second, independent reason to say no beyond just the number itself. Conditional access policies that require a known, managed device for sensitive systems reduce the blast radius even further, since a stolen credential and an approved push are worth a lot less to an attacker if the session still gets blocked by device posture checks downstream.&lt;/p&gt;

&lt;p&gt;None of this replaces user education, but the messaging matters. Framing it as "if you get a push you didn't request, deny it and report it" is more actionable than a vague warning about phishing, and it gives employees a specific, low-friction thing to do when the fatigue attack actually shows up in their pocket.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where this leaves a small IT team
&lt;/h2&gt;

&lt;p&gt;None of these controls are exotic — number matching, prompt throttling, and context-aware access policies are available in the identity platforms most small and mid-size businesses already pay for. The gap is almost always configuration, not tooling: these settings exist but default off, or get set once during initial rollout and never revisited as the platforms add new options. For a business without dedicated security staff, working through a full identity platform's admin console to find and enable every relevant setting isn't a quick task, which is a large part of why teams like &lt;a href="https://dytech.com/lake-mary-managed-it-services-support/" rel="noopener noreferrer"&gt;a managed IT services provider&lt;/a&gt; end up handling this kind of hardening as routine account maintenance rather than a special project.&lt;/p&gt;

&lt;p&gt;Push-bombing isn't a sophisticated attack technique in the way a zero-day exploit is. It's closer to a social engineering trick that happens to route through a security control instead of around it. That's actually good news, because it means the fix is mostly a matter of tightening settings that already exist rather than deploying anything new.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
    </item>
    <item>
      <title>The Dependency You Forgot You Had: Managing Third-Party Software Sprawl</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Thu, 09 Jul 2026 14:09:22 +0000</pubDate>
      <link>https://dev.to/ryan_bell/the-dependency-you-forgot-you-had-managing-third-party-software-sprawl-5c90</link>
      <guid>https://dev.to/ryan_bell/the-dependency-you-forgot-you-had-managing-third-party-software-sprawl-5c90</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxaknc8e1rkxkw4byeqsi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxaknc8e1rkxkw4byeqsi.png" alt="Tangled web of connected app icons and integrations" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Every engineering team accumulates a shadow inventory nobody deliberately built. A browser extension a designer installed in 2023. A scheduling SaaS tool signed up with a corporate Google account and forgotten. A npm package pulled in three transitive layers deep to format a date. Individually, each addition solved a real problem. Collectively, they form a supply-chain surface far wider than anything on the architecture diagram — and most of it is undocumented.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sprawl is a default state, not a failure
&lt;/h2&gt;

&lt;p&gt;Nobody decides to let the dependency footprint balloon; it happens through a thousand reasonable choices. A developer needs a feature by Friday and reaches for a library. A team adopts a point tool for a single workflow. A contractor connects a third-party app to the CRM to sync leads and never disconnects it after the engagement ends. Each step is locally rational and globally invisible.&lt;/p&gt;

&lt;p&gt;The result is that the systems your product actually depends on are not the ones in your repository. They include the packages those packages import, the SaaS platforms holding slices of your data, the integrations granted standing access to your identity provider, and the extensions running inside every browser your staff use. When one of them is compromised or abandoned upstream, the blast radius reaches you regardless of whether you remember adopting it.&lt;/p&gt;

&lt;h2&gt;
  
  
  You cannot secure what you have never listed
&lt;/h2&gt;

&lt;p&gt;The first move is boring and unavoidable: build an inventory. In the software supply-chain world this crystallizes as an SBOM, a software bill of materials — a machine-readable manifest of every component, library, and version that ships inside an application. Generating one turns a vague sense of “we use a lot of stuff” into an enumerable list you can actually query when the next widely-exploited library hits the news.&lt;/p&gt;

&lt;p&gt;Extend the same discipline past your codebase. Pull the list of OAuth applications authorized against your Google Workspace or Microsoft tenant. Export the integrations wired into your CRM, your CI pipeline, and your chat platform. Most teams running this exercise for the first time are unsettled by the length of the result — and by how many entries nobody can explain.&lt;/p&gt;

&lt;h2&gt;
  
  
  OAuth scope creep is the quiet risk
&lt;/h2&gt;

&lt;p&gt;The integrations deserve special scrutiny because of how their permissions work. When you connect a third-party app through OAuth — the “sign in with” and “allow access to” flow — you grant it a set of scopes, the specific permissions defining what it can read or change. A tool that only needed to read calendar availability may have been handed the ability to send mail as your users, because the broad scope was the path of least resistance at setup.&lt;/p&gt;

&lt;p&gt;Those grants persist. They survive the departure of the employee who created them, the end of the project that needed them, and the sunset of the vendor that issued them. A token quietly holding write access to your mailbox is a live credential whether or not the integration is still in use. Auditing scopes — and revoking the ones that outstrip what the tool genuinely requires — closes a category of exposure that no firewall touches.&lt;/p&gt;

&lt;h2&gt;
  
  
  Offboard, consolidate, repeat
&lt;/h2&gt;

&lt;p&gt;Once you can see the sprawl, prune it. Revoke OAuth grants for anything unrecognized or unused. Remove browser extensions that are not actively earning their place, since each one runs with deep access to whatever the browser sees. Delete the abandoned SaaS accounts still holding fragments of company data behind logins nobody rotates.&lt;/p&gt;

&lt;p&gt;Then look for overlap. Sprawl frequently means paying three vendors for capabilities one platform covers, each with its own attack surface, its own access token, and its own breach to worry about. Collapsing redundant tools shrinks both the security surface and the invoice. For a small team without the bandwidth to run this rationalization internally, bringing in &lt;a href="https://dytech.com/orlando-it-consulting-services/" rel="noopener noreferrer"&gt;an Orlando IT consulting firm&lt;/a&gt; to map the estate and recommend what to cut is often faster than fighting the backlog alone.&lt;/p&gt;

&lt;p&gt;Treat this as a standing loop rather than a one-off cleanup. New dependencies arrive every sprint, so schedule a recurring review of packages, integrations, and grants the way you already schedule dependency upgrades. The dependency you forgot you had is only dangerous while it stays forgotten. Make forgetting harder, and the sprawl stops compounding.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
    </item>
    <item>
      <title>The 3-2-1 Backup Rule in Practice — and the Restore Test Everyone Skips</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Thu, 09 Jul 2026 13:41:20 +0000</pubDate>
      <link>https://dev.to/ryan_bell/the-3-2-1-backup-rule-in-practice-and-the-restore-test-everyone-skips-47i</link>
      <guid>https://dev.to/ryan_bell/the-3-2-1-backup-rule-in-practice-and-the-restore-test-everyone-skips-47i</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyfb254u48l8uo1sybcw2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyfb254u48l8uo1sybcw2.png" alt="Editorial photograph of an external hard drive and a labeled backup tape cartridge sitting next to a laptop keyboard." width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The 3-2-1 backup rule is old enough that plenty of engineers can recite it without thinking: three copies of your data, on two different types of media, with one copy stored offsite. It's a good rule. It's also one that a striking number of teams believe they're following while actually violating at least one clause of it, usually without realizing until the moment a restore is the only thing standing between them and a very bad week.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the rule actually requires, clause by clause
&lt;/h2&gt;

&lt;p&gt;Three copies means the production data plus at least two backups — not the original plus one backup, which is only two copies total and leaves zero room for a backup itself failing. Two different media means the backups shouldn't both live on the same type of storage subject to the same failure modes: a primary server plus a backup on an identical drive in the same array doesn't count, because whatever kills one likely threatens the other. One offsite means at least one copy physically or logically separated from the original's location — a different data center, a different cloud region, or genuinely different infrastructure, not just a different folder on the same network. Teams tend to satisfy this on paper while quietly failing it in practice, because "offsite" has quietly come to mean "a different folder" rather than a genuinely separate failure domain.&lt;/p&gt;

&lt;h2&gt;
  
  
  The untested restore is the trap that gets people
&lt;/h2&gt;

&lt;p&gt;A backup that has never been restored is a hypothesis, not a backup. It's extremely common for a backup job to report success for months while the actual archive is subtly corrupt, incomplete, or missing a dependency needed to bring a system back up — a config file, a credential, a schema version the current tooling no longer understands. Nobody finds out until an actual incident forces a real restore, which is the worst possible time to discover it doesn't work. The only real defense is scheduling periodic restore drills as a standing task: pick a system, restore it to a test environment, and confirm the result is usable, on a calendar, not "whenever someone remembers."&lt;/p&gt;

&lt;h2&gt;
  
  
  Ransomware doesn't care about your backup schedule
&lt;/h2&gt;

&lt;p&gt;Modern ransomware is written with backups specifically in mind, because backups are the thing that makes a ransom demand ignorable. If your backup destination is continuously mounted and reachable from the same network and credentials as production, ransomware that gains a foothold will typically enumerate and encrypt or delete that backup right alongside everything else, turning your safety net into just another encrypted target. This is why "it syncs automatically to a network share" is not the safety property people assume it is — automatic and continuous is exactly the access pattern an attacker wants to inherit.&lt;/p&gt;

&lt;p&gt;A few properties worth checking against your actual setup, not just your backup vendor's marketing page:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Immutability — backups stored in a mode where they cannot be modified or deleted for a set retention window, even by an account with admin credentials.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Air-gapping — at least one copy disconnected from the network by default, whether that's offline media or a cloud tier that requires a separate, deliberate action to reach.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Separate credentials — backup storage that doesn't authenticate with the same identity provider or admin account as production, so one compromised credential can't reach both.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  "It syncs to the cloud" is not a backup
&lt;/h2&gt;

&lt;p&gt;File sync services are genuinely useful, and genuinely not backups, and the distinction matters more than it gets credit for. Sync tools are built to propagate changes quickly, including the change where a file gets deleted, overwritten, or encrypted by ransomware — the sync engine dutifully replicates that damage to every connected device and to the cloud copy, often within seconds. Real backup software is built around versioned, point-in-time snapshots specifically so you can roll back to before the bad event happened, not just to the most recent state, which in a ransomware incident is precisely the state you don't want. If the only copy of critical data lives in a synced folder with no independent version history, that's a single-point failure wearing a backup costume.&lt;/p&gt;

&lt;p&gt;Getting 3-2-1 right in practice is less about buying a specific tool and more about periodically asking uncomfortable questions of a system that appears to be working: is the offsite copy actually offsite, or just a different folder; has the restore ever been tested against something other than a single small file; and does anything protecting the backups depend on the same credentials protecting production. Teams that build in an &lt;a href="https://dytech.com/services/managed-services/" rel="noopener noreferrer"&gt;a managed IT services provider&lt;/a&gt; partner specifically to own that ongoing verification tend to catch the gap in a tabletop exercise instead of during an actual incident, which is the entire point of doing it at all.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A backup that has never been restored is a theory. Ransomware that can reach your backup storage isn't being blocked by anything. 3-2-1 was never meant to be checked off once and forgotten.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;None of this is exotic engineering. It's the difference between treating 3-2-1 as a rule you configured once and treating it as a property you actively verify, on a schedule, against the specific failure modes — corruption, ransomware, and plain human error — that backups exist to survive.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
    </item>
    <item>
      <title>Wi-Fi Security Basics Every Small Office Gets Wrong</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Mon, 06 Jul 2026 12:04:00 +0000</pubDate>
      <link>https://dev.to/ryan_bell/wi-fi-security-basics-every-small-office-gets-wrong-k2f</link>
      <guid>https://dev.to/ryan_bell/wi-fi-security-basics-every-small-office-gets-wrong-k2f</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcxi87dcysv7w414u2mdt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcxi87dcysv7w414u2mdt.png" alt="Wireless router with multiple device icons connected around it representing office and guest networks" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Walk into most small offices and you'll find the same router setup that's been running, mostly untouched, for years. It works, nobody's complained, and it's easy to leave alone. That's also exactly the problem. Wi-Fi is the entry point for a lot of small business networks, and a handful of avoidable misconfigurations show up constantly, even in offices that otherwise take security seriously. None of these fixes require an enterprise budget. Most take an afternoon.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start With the Encryption Standard Itself
&lt;/h2&gt;

&lt;p&gt;If your access points still support WEP, turn it off today, it's trivially broken and has been for a long time. WPA2 is still common and reasonably solid if configured correctly, but WPA3 is the current standard for a reason: it handles the initial connection handshake more securely, resists offline password-guessing attacks better, and generally closes gaps that WPA2 left open. Most business-grade access points sold in the last several years support WPA3 either natively or through a firmware update. Checking your router's admin panel for this setting takes five minutes and is one of the highest-leverage changes on this list.&lt;/p&gt;

&lt;h2&gt;
  
  
  One Network Is Not Enough
&lt;/h2&gt;

&lt;p&gt;A shocking number of small offices still put visitors, contractors, and staff laptops on the exact same network. That means a guest checking email in your lobby is on the same segment as your point-of-sale system, your file server, or whatever internal tooling your team relies on. Setting up a separate guest network, a feature built into nearly every business router at this point, keeps outside devices isolated from anything sensitive. It's not just about malicious guests. It's about not trusting an unknown device's security posture at all, because you have no idea what's actually running on it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Segmenting IoT and Office Gear
&lt;/h2&gt;

&lt;p&gt;The same logic applies inside the building, not just at the guest network boundary. Smart thermostats, networked printers, security cameras, and other IoT devices tend to run firmware that gets updated rarely, if ever, and they're frequently targeted precisely because they're overlooked. Putting these devices on their own VLAN or a dedicated network segment, separate from the laptops and servers where actual business data lives, means a compromised smart camera doesn't hand an attacker a direct path to your accounting software. This is standard practice in larger environments and is increasingly achievable on business-grade gear at SMB price points too.&lt;/p&gt;

&lt;h2&gt;
  
  
  Credentials: The Part Everyone Skips
&lt;/h2&gt;

&lt;p&gt;Router and access point admin panels ship with default credentials, and those defaults are public knowledge, documented in manuals and forums for basically every consumer and prosumer device on the market. Leaving the default admin username and password in place means anyone who identifies your hardware model can look up the login. Change it, use a strong unique password, and if the device supports it, restrict admin panel access to a wired connection only rather than leaving it reachable over Wi-Fi.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Disable WEP and move to WPA3 (or WPA2 at minimum) for the encryption standard&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run a separate guest network, fully isolated from internal systems&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Segment IoT devices — cameras, printers, thermostats — onto their own network segment&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Change default admin credentials and restrict admin panel access where possible&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Apply firmware updates on a regular schedule rather than waiting for something to break&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Firmware Updates Aren't Optional Maintenance
&lt;/h2&gt;

&lt;p&gt;Router and access point firmware gets patched for the same reason any other software does: vulnerabilities get discovered and fixed on an ongoing basis. Unlike a laptop, network hardware rarely nags anyone about pending updates, so it's easy for a device to sit on firmware that's years out of date without anyone noticing until something goes wrong. Setting a recurring calendar reminder to check for updates, or enabling automatic updates where the hardware supports it, closes a gap that otherwise just sits open indefinitely.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Hidden SSID Myth
&lt;/h2&gt;

&lt;p&gt;Hiding your network name feels like it should help, and it's one of the most common pieces of advice passed around in small offices, but it doesn't hold up technically. A hidden SSID isn't invisible, it's just not broadcast in the standard beacon frame, and any basic Wi-Fi scanning tool can still pick it up when devices probe for it. Worse, it can create a false sense of security that leads offices to skip the changes that actually matter, like encryption strength and network segmentation. Treat it as a non-factor and focus effort on the fixes above.&lt;/p&gt;

&lt;p&gt;None of this requires replacing your hardware or hiring a specialist for a one-time fix. It requires going into the admin panel, changing a handful of settings, and building a habit of checking back periodically, or handing that ongoing maintenance off to &lt;a href="https://dytech.com/services/businessitsupport/" rel="noopener noreferrer"&gt;a managed IT services provider&lt;/a&gt; that already tracks firmware advisories and configuration best practices across many networks rather than just one. Either way, the office Wi-Fi that's been running untouched for years is worth an afternoon of attention before it becomes the reason something else goes wrong.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Wi-Fi security isn't about one clever trick. It's about not leaving five easy doors unlocked while worrying about a sixth one that was never really a lock at all.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
    </item>
    <item>
      <title>Patch Management for Teams With No Sysadmin</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Wed, 01 Jul 2026 15:03:28 +0000</pubDate>
      <link>https://dev.to/ryan_bell/patch-management-for-teams-with-no-sysadmin-26n0</link>
      <guid>https://dev.to/ryan_bell/patch-management-for-teams-with-no-sysadmin-26n0</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1bcjepqxoxq083fen7o2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1bcjepqxoxq083fen7o2.png" alt="Editorial photograph of a laptop on a desk displaying an abstract grid of soft-colored blocks, cool office daylight." width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Plenty of small technical shops run without anyone whose job title includes "systems administrator." The founding engineers ship product, and patching becomes the chore that slips until a vulnerability scan or a client questionnaire forces the issue. It does not have to be a scramble. With a modest amount of automation and a sensible way to decide what to fix first, keeping operating systems and third-party software current is entirely manageable for a lean team.&lt;/p&gt;

&lt;h2&gt;
  
  
  Automate the boring parts first
&lt;/h2&gt;

&lt;p&gt;Manual patching does not scale past a handful of machines, and it is the first thing to lapse when everyone is busy. The fix is to let tooling handle the routine cycle. Operating-system updates on Windows and macOS can be centrally managed, and endpoint management platforms or configuration tools can push third-party updates for the browsers, runtimes, and libraries that attackers target most. The aim is a system where most patches land without a human remembering to click anything.&lt;/p&gt;

&lt;p&gt;Third-party software is where lean teams get burned. The operating system nags you to update; the PDF reader, the browser plugin, and the aging Java or Node runtime on a build box do not. Inventory what is installed, then wire as much of it as possible into an automated update path.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prioritize by exploitability, not just severity
&lt;/h2&gt;

&lt;p&gt;A common mistake is treating the severity score as the whole story. A CVSS rating tells you how bad a flaw could be in the worst case, not how likely it is to be used against you. A "critical" bug in software that is not reachable from the internet may matter far less than a "high" bug in your public-facing web stack that is being actively exploited in the wild.&lt;/p&gt;

&lt;p&gt;Weigh two questions together: is this being exploited right now, and is the affected system actually exposed? Public catalogs of known-exploited vulnerabilities and exposure-based prioritization feeds help you sort the genuine fires from the theoretical ones, so a small team spends its limited hours where the real risk lives.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Exposure: is the vulnerable component internet-facing, or tucked behind the firewall on an internal segment?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Exploitability: is there a known exploit circulating, and is the flaw appearing in active-attack feeds?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Blast radius: if this box were compromised, what else could an attacker reach from it?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Test rings and maintenance windows
&lt;/h2&gt;

&lt;p&gt;Automated patching without a safety net eventually breaks something in production. The standard answer is a ring model, familiar to anyone who has run a canary deployment. Push updates first to a small pilot group of non-critical machines. If nothing breaks after a day or two, widen to the next ring, and finally to everything. You catch the bad patch on three machines instead of three hundred.&lt;/p&gt;

&lt;p&gt;Pair that with defined maintenance windows so reboots and updates land when they disrupt the least, and communicate the schedule so no one loses work to a surprise restart. For teams that would rather not own this cadence at all, handing the patch cycle to &lt;a href="https://dytech.com/services/security-services" rel="noopener noreferrer"&gt;a managed IT and security provider&lt;/a&gt; is a reasonable trade: you keep shipping features while someone else owns the ring rollout, the exception tracking, and the reporting.&lt;/p&gt;

&lt;p&gt;Whatever route you take, close the loop with visibility. A simple dashboard or report showing which machines are current and which are lagging turns patching from an invisible chore into a metric you can actually manage.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Patch management on a small team works when the routine is automated, the priorities follow real-world exploitability, and updates roll out through test rings rather than all at once.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You will not achieve a perfectly patched fleet, and chasing that is a waste of energy. The realistic target is a fast, automated cycle that fixes the exploitable, exposed things quickly and lets the low-risk backlog wait. That is well within reach for a team with no dedicated administrator, and it closes the gap that opportunistic attackers rely on.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
    </item>
    <item>
      <title>The Hidden Tax of Unmanaged SaaS: Shadow IT, Wasted Licenses, and Ungoverned Data</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Thu, 25 Jun 2026 11:06:09 +0000</pubDate>
      <link>https://dev.to/ryan_bell/the-hidden-tax-of-unmanaged-saas-shadow-it-wasted-licenses-and-ungoverned-data-4jlg</link>
      <guid>https://dev.to/ryan_bell/the-hidden-tax-of-unmanaged-saas-shadow-it-wasted-licenses-and-ungoverned-data-4jlg</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flk2w2jgjnybze75s108u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flk2w2jgjnybze75s108u.png" alt="Editorial photograph of a laptop screen glowing with a grid of generic app tiles on a dark desk, cool ambient light, no people, no readable text." width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ask a growing company how many software subscriptions it pays for and you will often get a number that is confidently wrong. Somewhere between the marketing team's tools, the design team's tools, and the half-dozen apps individual employees signed up for with a corporate card, the real total has drifted out of anyone's view. That drift, usually called shadow IT, carries costs that are easy to ignore right up until they are not.&lt;/p&gt;

&lt;h2&gt;
  
  
  The money leak
&lt;/h2&gt;

&lt;p&gt;The most immediate cost is simple waste. Subscriptions renew automatically, so a tool someone adopted for one project keeps billing long after the project ended. Teams buy overlapping products that do the same job. Licenses are paid for employees who left months ago. Annual plans renew at a higher tier nobody reviewed. None of these are dramatic on their own, which is exactly why they survive; each is small enough to slip under scrutiny, and collectively they can add up to a meaningful share of a software budget that no one is actively managing.&lt;/p&gt;

&lt;h2&gt;
  
  
  The risk leak
&lt;/h2&gt;

&lt;p&gt;The quieter cost is security and data sprawl. Every unsanctioned app is another place company data lives, governed by a password strength and a configuration no one reviewed. When an employee leaves, their accounts in tools IT never knew about do not get shut off, because IT never knew about them. Sensitive files end up in personal-tier cloud storage with no audit trail. The organization cannot protect, back up, or even inventory data it does not know is there. Shadow IT does not just waste money; it expands the attack surface invisibly, which is the worst way for an attack surface to grow.&lt;/p&gt;

&lt;p&gt;Getting a handle on it is less about banning tools than about gaining visibility:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Build an actual inventory of every subscription and who owns it, then kill the duplicates and the orphans.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Route new software purchases through a light approval step so the list cannot silently regrow.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tie license counts to your real headcount so departures and role changes reclaim seats automatically.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Where a managed approach helps
&lt;/h2&gt;

&lt;p&gt;For a team without dedicated IT operations, imposing this kind of governance is a job nobody owns, which is how the sprawl started. This is the sort of unglamorous, ongoing oversight that &lt;a href="https://dytech.com/lake-mary-managed-it-services-support/" rel="noopener noreferrer"&gt;a managed IT provider&lt;/a&gt; is built to handle: discovering what is actually in use, consolidating overlapping tools, reclaiming dead licenses, and putting a process in place so the bill and the data footprint stop quietly expanding. The point is not control for its own sake but turning an invisible, growing liability back into something measurable.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Unmanaged SaaS leaks two ways: wasted spend on forgotten and overlapping subscriptions, and ungoverned data in apps IT never approved. Visibility, not a crackdown, is the fix.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Shadow IT is the predictable result of letting people solve their own problems quickly, which is not a bad instinct. The job is not to stamp it out but to catch up to it with an inventory and a process, so the convenience stops carrying a hidden tax in money and risk.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
    </item>
    <item>
      <title>VPN or Zero Trust? Rethinking Remote Access When the Perimeter Is Gone</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Mon, 22 Jun 2026 11:57:55 +0000</pubDate>
      <link>https://dev.to/ryan_bell/vpn-or-zero-trust-rethinking-remote-access-when-the-perimeter-is-gone-476f</link>
      <guid>https://dev.to/ryan_bell/vpn-or-zero-trust-rethinking-remote-access-when-the-perimeter-is-gone-476f</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmxdqtam03o5a3gujmf3t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmxdqtam03o5a3gujmf3t.png" alt="Editorial photograph of a laptop on a home-office desk connected to a docking station, a coffee mug and notebook nearby, soft daylight." width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For years, securing remote workers meant one thing: a VPN. An employee connected through an encrypted tunnel, landed "inside" the corporate network, and was trusted from there. That model made sense when nearly everything lived in an office server room and remote access was the exception. It makes far less sense now, and the shift toward zero-trust access is a direct response to how thoroughly the old perimeter has dissolved.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the perimeter is gone
&lt;/h2&gt;

&lt;p&gt;The traditional security model treated the network like a building: a hard wall around the outside, and trust for anyone who got in the door. The VPN was that door. The trouble is that the "building" no longer has clear walls. Your email lives in Microsoft 365 or Google Workspace, your files in a cloud drive, your business apps in someone else's data center, and your staff log in from home networks, phones, and coffee shops. When the things you are protecting are scattered across the internet and your people are too, the idea of a single trusted interior stops matching reality. A VPN still drops a remote user "inside," but inside no longer means much.&lt;/p&gt;

&lt;h2&gt;
  
  
  What zero trust changes
&lt;/h2&gt;

&lt;p&gt;Zero trust flips the default. Instead of trusting a device because it reached the network, it verifies every request: who the user is, whether they have passed multi-factor authentication, whether their device is known and healthy, and whether they are allowed to reach that specific application, every time. The practical effect is that access is granted to one app, not to the whole network. If an attacker steals one set of credentials, they reach the one resource that account can touch, not a flat internal network where they can roam. For a small business, that containment is the headline benefit.&lt;/p&gt;

&lt;p&gt;A few honest distinctions are worth keeping straight:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A VPN authenticates once and grants broad network access; zero trust authenticates continuously and grants narrow, per-app access.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Zero trust is a strategy, not a single product you buy and switch on.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Most small businesses move gradually, often starting with strong identity and MFA on cloud apps.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What this means for a smaller company
&lt;/h2&gt;

&lt;p&gt;None of this requires ripping out everything overnight. The realistic path for most small firms starts with the highest-value, lowest-effort piece: strong identity controls and multi-factor authentication on the cloud services you already use, then tightening access app by app. As more of the business runs on hosted platforms, the question of remote access blends into broader decisions about where systems live and how they are managed, which is why it often comes up alongside a move to &lt;a href="https://dytech.com/services/cloudcomputing/" rel="noopener noreferrer"&gt;managed cloud infrastructure&lt;/a&gt; with security and access built in rather than bolted on afterward.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A VPN says "you reached the network, so you're trusted." Zero trust says "prove who you are, on a healthy device, for this one app, every time."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The VPN is not dead for every use, but as the default way to secure a distributed team, it is showing its age. Verifying each request and granting the narrowest access that gets the job done is simply a better fit for a workforce and a set of applications that no longer sit behind any single wall.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Microsoft 365 vs Google Workspace for SMBs</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Thu, 18 Jun 2026 15:32:26 +0000</pubDate>
      <link>https://dev.to/ryan_bell/microsoft-365-vs-google-workspace-for-smbs-3c42</link>
      <guid>https://dev.to/ryan_bell/microsoft-365-vs-google-workspace-for-smbs-3c42</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv7y0bg9v64qyazmew843.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv7y0bg9v64qyazmew843.png" alt="Two open laptops side by side on a clean desk with blank screens in soft office daylight." width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For a small business, the Microsoft 365 versus Google Workspace decision is less about which suite is "better" and more about which one fits how your team already works, what you can migrate without pain, and which security posture you can actually administer. Both are mature, reliable, and capable of running a whole company. The differences that matter at the 15-to-200-employee scale are practical, not ideological.&lt;/p&gt;

&lt;h2&gt;
  
  
  Fit: where your team already lives
&lt;/h2&gt;

&lt;p&gt;Google Workspace is built browser-first. If your staff lives in Chrome, collaborates in real time on shared documents, and rarely touches heavy desktop formatting, Workspace tends to feel native and low-friction. Its real-time co-editing has been the benchmark for years, and admin is comparatively simple.&lt;/p&gt;

&lt;p&gt;Microsoft 365 wins when the desktop apps are non-negotiable. Finance teams with complex Excel models, anyone exchanging heavily formatted Word documents with outside parties, and organizations standardized on Outlook will find that the web versions of Google's apps do not fully replace what they rely on. M365 also bundles Teams, which for many SMBs becomes the chat-and-meetings backbone, and its desktop Office apps still handle edge-case formatting more faithfully than imported equivalents.&lt;/p&gt;

&lt;h2&gt;
  
  
  Migration: the part that actually hurts
&lt;/h2&gt;

&lt;p&gt;The suite is easy; the move is not. Migrating mail, calendars, contacts, and especially shared files carries the real cost and risk. A few things consistently cause pain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Email migration with intact folder structures, calendar invites, and shared mailboxes, without a gap in delivery during cutover.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;File migration where folder permissions and sharing links have to be re-mapped, since the two platforms model sharing differently.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;User retraining, which is a soft cost people forget; productivity dips for a couple of weeks regardless of which direction you move.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you are starting fresh, pick the one that fits and move on. If you are switching, budget for the migration as a project with a defined cutover, not a weekend toggle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Security: what you can administer matters more than the feature list
&lt;/h2&gt;

&lt;p&gt;Both platforms offer strong security at their business tiers: multi-factor authentication, conditional access, device management, data-loss prevention, and audit logging. The deciding factor for an SMB is usually not which checklist is longer but whether someone on your side is actually configuring and monitoring those controls. A perfectly capable security suite left at its defaults is a half-locked door. Enforced MFA, sensible sharing limits, and someone watching the admin alerts beat any feature comparison.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The suite rarely fails a small business. The unconfigured suite does.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That administrative gap is where most small companies get stuck, because the owner picked a platform but no one owns the security configuration, the license cleanup, or the offboarding process when someone leaves. This is the work that benefits from &lt;a href="https://dytech.com/orlando-small-business-it-support" rel="noopener noreferrer"&gt;outsourced IT support for a small business&lt;/a&gt;: not the dramatic projects, but the steady governance that keeps either platform secure and tidy. Choose M365 if you are desktop-Office-heavy and want Teams as your hub; choose Workspace if you are browser-first and value simplicity. Either way, the decision that protects you is committing to administer whichever one you pick.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>cloud</category>
      <category>sysadmin</category>
      <category>business</category>
    </item>
    <item>
      <title>Cloud cost sprawl and how to rein it in</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Mon, 15 Jun 2026 11:30:53 +0000</pubDate>
      <link>https://dev.to/ryan_bell/cloud-cost-sprawl-and-how-to-rein-it-in-4054</link>
      <guid>https://dev.to/ryan_bell/cloud-cost-sprawl-and-how-to-rein-it-in-4054</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0qjye72vrck8sy1qnrzq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0qjye72vrck8sy1qnrzq.png" alt="A data-center aisle of server racks receding into soft blue ambient light with faint indicator lights." width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Cloud spending has a way of growing quietly until a finance review turns up a bill nobody can fully explain. The cloud's great strength, the ability to spin up resources in seconds, is also how the waste accumulates: every easy launch is an easy thing to forget. This sprawl is rarely the result of one bad decision. It is the sum of hundreds of small, reasonable ones that nobody ever revisited, and reining it in is less about a clever tool than about a few disciplined habits.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tagging: you cannot manage what you cannot attribute
&lt;/h2&gt;

&lt;p&gt;The root problem behind most runaway cloud bills is that no one can tell what each resource is for or who owns it. A consistent tagging policy fixes this at the source. By requiring every resource to carry tags for its owner, project, and environment, you turn an opaque bill into something you can actually read: this much for that project, that much for this team. Tagging is unglamorous and easy to defer, but without it, every cost conversation stalls on "what even is this line item?" With it, waste becomes visible and accountable, which is the first requirement for cutting it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Idle and orphaned resources
&lt;/h2&gt;

&lt;p&gt;The most common form of cloud waste is paying for things nobody uses. Test servers left running after the test ended, storage volumes that outlived the machines they were attached to, oversized instances provisioned for a peak that never recurs, and old snapshots accumulating month after month. Individually each is small; collectively they are often a large share of an avoidable bill. Two habits address this: right-sizing, where you periodically check whether running resources are actually as large as they need to be, and a regular sweep for orphaned resources that are costing money while serving no one. Much of this can be automated, but even a manual monthly pass finds real savings.&lt;/p&gt;

&lt;h2&gt;
  
  
  The review cadence that makes it stick
&lt;/h2&gt;

&lt;p&gt;Cost control is not a one-time cleanup; it drifts back the moment attention lapses, which is why the most effective practice is a recurring review. A short monthly look at the bill, broken down by the tags above, with someone responsible for asking why anything jumped, keeps sprawl from rebuilding. The goal is not to make every engineer obsess over pennies but to create a steady, lightweight rhythm of visibility and accountability. For organizations without the in-house bandwidth to run this consistently, an &lt;a href="https://dytech.com/orlando-it-solutions/" rel="noopener noreferrer"&gt;Orlando IT solutions provider&lt;/a&gt; can set up the tagging, monitoring, and review process so the savings persist instead of evaporating after the first cleanup.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Enforce tagging by owner, project, and environment so costs are attributable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hunt down idle and orphaned resources; right-size what is oversized.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hold a short, recurring cost review so sprawl cannot quietly rebuild.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Automate where you can, but a manual monthly pass still pays off.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Cloud sprawl is not one bad call. It is a thousand small, reasonable ones nobody circled back to, which is exactly why a recurring review beats a one-time purge.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The encouraging part is that controlling cloud costs rarely requires re-architecting anything; it requires knowing what you have, removing what you do not need, and looking at the bill on a schedule. Teams that adopt those habits routinely trim a meaningful fraction of their spend without touching anything users notice. The waste was never delivering value in the first place, which makes this one of the few optimizations that is pure upside once you build the discipline to keep at it.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Ransomware readiness for a 30-person company</title>
      <dc:creator>Ryan Bell</dc:creator>
      <pubDate>Thu, 11 Jun 2026 11:22:13 +0000</pubDate>
      <link>https://dev.to/ryan_bell/ransomware-readiness-for-a-30-person-company-3akb</link>
      <guid>https://dev.to/ryan_bell/ransomware-readiness-for-a-30-person-company-3akb</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh0bt7sm6556lktz164q9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh0bt7sm6556lktz164q9.png" alt="A small office network switch with patch cables and a labeled backup drive on a metal shelf." width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ransomware coverage tends to focus on large breaches, but the businesses hit hardest are usually small ones — the thirty-person company with no dedicated security staff, a flat network, and backups nobody has tested in a year. The good news is that ransomware readiness at this size is not about expensive tooling. It is about three unglamorous fundamentals done properly: backups you can actually restore from, a network that does not let one infection reach everything, and a team that has practiced what to do. Here is how a small shop builds each one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Backups: the part that decides everything
&lt;/h2&gt;

&lt;p&gt;When ransomware encrypts your files, your recovery is only as good as your backups. The standard worth aiming for is "3-2-1": three copies of your data, on two different types of media, with one copy kept offline or otherwise out of reach of the network. The offline part is the piece small businesses miss. Modern ransomware actively hunts for connected backups and encrypts those too, so a backup drive that is always plugged in offers a false sense of safety. An immutable or air-gapped copy — one that cannot be altered or deleted for a set retention window — is what lets you say no to a ransom demand.&lt;/p&gt;

&lt;p&gt;And a backup you have never restored is a hypothesis, not a safety net. Schedule a test restore at least quarterly. The first time most teams try, they discover the backup was missing a critical database, or that a full restore takes far longer than the business can afford to be down. Better to learn that on a calm Tuesday than during an incident.&lt;/p&gt;

&lt;h2&gt;
  
  
  Segmentation: stop one machine from becoming all of them
&lt;/h2&gt;

&lt;p&gt;On a flat network, every device can talk to every other device, which is exactly how ransomware spreads from a single clicked attachment to the whole company in minutes. Segmentation breaks the network into zones — separating, say, the point-of-sale systems, the back-office machines, the servers, and the guest Wi-Fi — so that an infection in one zone cannot freely reach the others. For a small business this does not require a redesign; even basic VLAN separation and tightened firewall rules between segments dramatically shrink the blast radius. Pair it with the principle of least privilege on file shares so a compromised user account cannot encrypt data it never needed to touch.&lt;/p&gt;

&lt;h2&gt;
  
  
  Drills: the plan you have not rehearsed will not hold
&lt;/h2&gt;

&lt;p&gt;An incident-response plan that lives in a document nobody has read fails under pressure. Run a tabletop exercise once or twice a year: gather the handful of people who would be involved and walk through a realistic scenario out loud. Who disconnects the affected machines? Who has the backup admin credentials, and are they stored somewhere that is not also encrypted? Who calls the insurer, and who talks to staff and customers? These exercises routinely surface gaps — a single person who is the only one who knows the recovery process, a contact list that is itself on the file server — that are cheap to fix beforehand and ruinous to discover during an attack.&lt;/p&gt;

&lt;h2&gt;
  
  
  Putting it together
&lt;/h2&gt;

&lt;p&gt;None of these three require enterprise budgets, but they do require someone to own them and keep them current. A small business without in-house IT often gets there fastest with a managed services partner — a provider like &lt;a href="https://dytech.com/services/managed-services" rel="noopener noreferrer"&gt;Dytech Group&lt;/a&gt; can set up immutable backups, segment the network, and run the periodic restore tests and tabletop drills so readiness does not quietly lapse. Backups, segmentation, drills: get those three right and a ransomware infection becomes a bad day instead of an extinction event.&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>sysadmin</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
