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

Access to the 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 use Satellite Server for local subscription management and content hosting.

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)
sudo subscription-manager register --username=your_username

# Graphical: GNOME Settings → Subscription Manager

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

Basic Registration

# Register with username/password (interactive)
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 on command line
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

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

Using Activation Keys

Activation Keys are pre-configured registration tokens that specify subscriptions, repositories, and settings without requiring username/password.

# Register using activation key (no 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 in:
# Customer Portal → Activation Keys
# Or in Satellite Server
Benefits: No passwords in scripts • Pre-configured subscriptions • Consistent registration across systems • Easy automation

Attaching Subscriptions

# List available subscriptions
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

# 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

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

Managing Repositories

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

# List only 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
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

Repository Content Default
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) Disabled
Note: Repository names include architecture (x86_64, aarch64) and RHEL version. Some require add-on subscriptions.

Checking Status

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

System Purpose Status: Not Specified

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

# Check subscription details
sudo subscription-manager list --consumed

# Check what products are installed
sudo subscription-manager list --installed

Unregistering Systems

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

# Clean up all subscription data
sudo subscription-manager clean
All local data removed

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

# Remove from Customer Portal (if system was deleted)
# Customer Portal → Systems → Delete System
⚠ Important: Always unregister before decommissioning a system. Orphaned registrations consume subscription entitlements.

System Purpose

System Purpose attributes help Red Hat understand how systems are used, improving subscription recommendations and compliance reporting.

# 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 during registration
sudo subscription-manager register --username=USER \
  --auto-attach \
  --service-level=Premium \
  --usage=Production

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 connectivity
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 in subscription-manager
sudo subscription-manager config --server.proxy_hostname=proxy.example.com
sudo subscription-manager config --server.proxy_port=3128

# With 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
Note: Also configure proxy for dnf in /etc/dnf/dnf.conf to access repositories through the proxy.

Red Hat Insights

Red Hat Insights is a SaaS platform that analyzes registered systems to identify risks, recommend optimizations, and ensure compliance.

# Install insights client
sudo dnf install insights-client

# Register with Insights
sudo insights-client --register

# Run analysis manually
sudo insights-client

# Check Insights status
sudo insights-client --status

# View recommendations
# console.redhat.com → Insights → Advisor
Included Free: Insights is included with RHEL subscriptions at no additional cost.

Key Takeaways

1

Registration enables access to updates, security patches, and support services

2

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

3

Activation keys enable secure, automated registration without passwords

4

Enable additional repositories as needed (CodeReady Builder, Supplementary)

LAB EXERCISES

  • Register a system using subscription-manager with your Red Hat account
  • List available and consumed subscriptions
  • Enable the CodeReady Builder repository
  • 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