RED HAT ENTERPRISE LINUX

Registering Systems for
Red Hat Support

Subscription Management and System Registration

CIS126RH | RHEL System Administration 1
Mesa Community College

Learning Objectives

1
Understand Red Hat subscriptions

Learn the subscription model and what registration provides

2
Register systems with subscription-manager

Use the command-line tool to register and attach subscriptions

3
Manage repositories and content

Enable and disable software repositories based on needs

4
Troubleshoot registration issues

Diagnose and resolve common registration problems

Why Register Your System?

Registration connects your RHEL system to Red Hat's infrastructure, enabling access to software updates, security patches, and support services.

🔄 Software Updates

Latest packages, bug fixes, and feature enhancements

🔒 Security Patches

Critical security updates to protect against vulnerabilities

📞 Technical Support

Access to Red Hat's support team and knowledge base

📊 Red Hat Insights

Proactive system analysis and recommendations

The Subscription Model

What's Included:

  • Right to use RHEL software
  • Access to software repositories
  • Security and bug fix updates
  • Technical support (varies by tier)
  • Red Hat Customer Portal access
  • Certifications and compliance docs

Subscription Types:

  • Physical/Virtual: Per socket pair
  • Virtual Datacenter: Unlimited VMs
  • Cloud Access: BYOS to cloud
  • Developer: Free for individuals
  • Academic: Educational pricing
Free Developer Subscription: Individual developers can get a free subscription for up to 16 systems at developers.redhat.com

Registration Architecture

RHEL System
subscription-manager
Red Hat CDN
Subscription Management
↓ provides access to ↓
Base OS
rhel-9-baseos
AppStream
rhel-9-appstream
Optional
Supplementary repos
Alternative: Organizations can run their own Red Hat Satellite Server as an on-premise subscription and content proxy — providing air-gapped environments, patch scheduling, and centralized management.

Registration Methods

🖥️ Command Line

subscription-manager
Full control, scriptable
Recommended for servers

🖱️ GNOME GUI

Settings → Subscription
User-friendly interface
Good for workstations

⚙️ During Install

Anaconda installer
Register during setup
Enables install-time repos

# Command-line registration (most common for servers)
sudo subscription-manager register --username=your_username

# Kickstart (automated installation)
rhsm --organization=ORG_ID --activation-key=KEY_NAME

Basic Registration

# Register interactively (prompts for username/password)
sudo subscription-manager register
Registering to: subscription.rhsm.redhat.com:443/subscription
Username: your_username
Password:
The system has been registered with ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

# Register with credentials inline
sudo subscription-manager register --username=your_username --password=your_password

# Register and auto-attach best matching subscription
sudo subscription-manager register --username=your_username --auto-attach
--auto-attach searches available subscriptions and automatically attaches the best match. Use it for simple registrations. For precise control, attach manually by pool ID.

Using Activation Keys

# Register using activation key (no username/password needed)
sudo subscription-manager register   --org=YOUR_ORG_ID   --activationkey=your_activation_key

# Find your organization ID:
# Customer Portal → Subscriptions → Organization ID

# Activation keys are created and managed in:
# Customer Portal → Activation Keys
# Or in Red Hat Satellite Server

Activation Key Benefits

  • No username/password required
  • Pre-configured subscriptions + repos
  • Safe for automation and scripts
  • Revocable independently of credentials

Key Contents

  • Subscription(s) to attach
  • Repositories to enable
  • System purpose attributes
  • Release version pinning

Attaching Subscriptions

# List available subscriptions for this system
sudo subscription-manager list --available

# Auto-attach best matching subscription
sudo subscription-manager attach --auto

# Attach a specific subscription by pool ID
sudo subscription-manager attach --pool=POOL_ID
Pool ID identifies a specific subscription entitlement. Find it with list --available or in the Customer Portal under Subscriptions.

Viewing Consumed Subscriptions

# List currently attached subscriptions
sudo subscription-manager list --consumed
+-------------------------------------------+
   Consumed Subscriptions
+-------------------------------------------+
Subscription Name: Red Hat Enterprise Linux Server
Pool ID:           xxxx-xxxx-xxxx-xxxx
Active:            True
Ends:              12/31/2025

# List installed products (what is licensed)
sudo subscription-manager list --installed

# Remove a specific subscription
sudo subscription-manager remove --pool=POOL_ID

# Remove all subscriptions (keeps registration)
sudo subscription-manager remove --all

Managing Repositories

# List all available repositories
sudo subscription-manager repos --list

# List only currently enabled repositories
sudo subscription-manager repos --list-enabled

# Enable a repository
sudo subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms

# Disable a repository
sudo subscription-manager repos --disable=rhel-9-for-x86_64-supplementary-rpms

# Enable multiple repositories at once
sudo subscription-manager repos   --enable=codeready-builder-for-rhel-9-x86_64-rpms   --enable=rhel-9-for-x86_64-baseos-rpms

# Verify with dnf
dnf repolist

Common Repositories

RepositoryContentDefault
rhel-9-for-x86_64-baseos-rpms Core OS, kernel, basic utilities ✓ Enabled
rhel-9-for-x86_64-appstream-rpms Applications, languages, modules ✓ Enabled
codeready-builder-for-rhel-9-*-rpms Development headers, build deps Disabled
rhel-9-for-x86_64-supplementary-rpms Additional packages Disabled
rhel-9-for-x86_64-highavailability-rpms HA clustering (add-on sub) Disabled
Architecture note: Repository names include the architecture (x86_64, aarch64). Some repositories require add-on subscriptions beyond the base RHEL entitlement.

Checking Status

# Overall subscription status
sudo subscription-manager status
+-------------------------------------------+
   System Status Details
+-------------------------------------------+
Overall Status: Current

System Purpose Status: Not Specified

# Detailed system identity
sudo subscription-manager identity
system identity: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
name: server01.example.com
org name: Your Organization
org ID: 1234567

Verifying Products and Facts

# Check what subscriptions are consumed
sudo subscription-manager list --consumed

# Check what products are installed (are they covered?)
sudo subscription-manager list --installed

# View system facts (hardware info sent to Red Hat)
sudo subscription-manager facts

# Refresh subscription data from server
sudo subscription-manager refresh

# Check RHSM log for recent activity
sudo tail -f /var/log/rhsm/rhsm.log
subscription-manager refresh forces a sync with the subscription server — use it when you have made changes in the Customer Portal (like attaching subscriptions) and want them reflected immediately without waiting for the automatic sync.

Unregistering Systems

# Unregister the system (releases subscription entitlement)
sudo subscription-manager unregister
Unregistering from: subscription.rhsm.redhat.com:443/subscription
System has been unregistered.

# Clean all local subscription data (no network call)
sudo subscription-manager clean
All local data removed

# Full reset workflow (unregister + clean + re-register)
sudo subscription-manager unregister
sudo subscription-manager clean
sudo subscription-manager register --username=USER --auto-attach
Portal cleanup: If a system is deleted without unregistering, use Customer Portal → Systems → Delete System to release the subscription entitlement back to your pool.

System Purpose

# Set system purpose attributes
sudo subscription-manager syspurpose set-role "Red Hat Enterprise Linux Server"
sudo subscription-manager syspurpose set-usage "Production"
sudo subscription-manager syspurpose set-sla "Premium"

# View current settings
sudo subscription-manager syspurpose show
Current Usage: Production
Current Role: Red Hat Enterprise Linux Server
Current Service Level Agreement: Premium
# Set system purpose during registration
sudo subscription-manager register --username=USER   --auto-attach   --service-level=Premium   --usage=Production
System Purpose helps subscription auto-attach select the most appropriate subscription when multiple options are available — matching role, usage, and SLA requirements.

Troubleshooting Registration

Common Issues:

  • Network/proxy blocking connection
  • Invalid or expired credentials
  • No available subscriptions
  • System already registered
  • Clock synchronization issues

Diagnostic Commands:

  • subscription-manager status
  • subscription-manager identity
  • cat /var/log/rhsm/rhsm.log
  • subscription-manager facts
  • ping subscription.rhsm.redhat.com
# Test HTTPS connectivity to Red Hat CDN
curl -v https://subscription.rhsm.redhat.com:443/subscription

# Force re-registration
sudo subscription-manager unregister
sudo subscription-manager clean
sudo subscription-manager register --username=USER --auto-attach

Proxy Configuration

# Configure proxy hostname and port
sudo subscription-manager config --server.proxy_hostname=proxy.example.com
sudo subscription-manager config --server.proxy_port=3128

# With proxy authentication
sudo subscription-manager config --server.proxy_user=proxyuser
sudo subscription-manager config --server.proxy_password=proxypass

# View current configuration
sudo subscription-manager config
[server]
   hostname = subscription.rhsm.redhat.com
   proxy_hostname = proxy.example.com
   proxy_port = 3128

# Configuration file location
cat /etc/rhsm/rhsm.conf
/etc/rhsm/rhsm.conf stores all subscription-manager settings. You can edit it directly or use subscription-manager config. The file is also read by DNF for repository access.

Red Hat Insights

Red Hat Insights is a proactive analytics service included with all RHEL subscriptions. It analyzes your systems and provides actionable recommendations for security, performance, and stability.

# Install the Insights client
sudo dnf install insights-client

# Register with Insights
sudo insights-client --register

# Run analysis manually and upload results
sudo insights-client

# Check Insights registration status
sudo insights-client --status

Insights Provides:

  • Security vulnerability advisories
  • Configuration drift detection
  • Performance recommendations
  • Patch management guidance

View Results:

console.redhat.com → Insights → Advisor

Runs automatically via cron after registration.

Key Takeaways

1

Registration enables access to updates, security patches, and support. Unregistered systems cannot receive packages from the Red Hat CDN.

2

subscription-manager is the primary tool: register, attach, repos, status, identity.

3

Activation keys enable secure, automated registration without exposing passwords — preferred for scripting and large fleets.

4

Enable additional repositories as needed: CodeReady Builder for development, Supplementary for extra packages.

LAB EXERCISES

  • Register a system using subscription-manager with your Red Hat account
  • List available and consumed subscriptions
  • Enable the CodeReady Builder repository and verify with dnf repolist
  • Check system registration status and identity
  • Unregister and re-register to practice the full lifecycle

Next: Getting AI-assisted Help with Red Hat Enterprise Linux Lightspeed