View a markdown version of this page

Bekannte Probleme - Forschungs- und Ingenieurstudio

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Bekannte Probleme

Bekannte Probleme 2024.x

........................

(2024.12 und 2024.12.01) Regex-Fehler bei der Registrierung eines neuen Cognito-Benutzers

Beschreibung des Fehlers

Wenn Sie versuchen, AWS Cognito-Benutzer über das Webportal zu registrieren, deren E-Mail-Präfixe enthalten . „, dies führt beispielsweise zu einem Fehler<firstname>.<lastname>@<company>.com, der besagt, dass der Cognito-Benutzername nicht dem definierten Regex-Muster entspricht.

Fehler „Ungültige Parameter“

Dieser Fehler wird dadurch verursacht, dass RES automatisch Benutzernamen aus dem E-Mail-Präfix des Benutzers generiert. Benutzernamen mit „.“ sind jedoch keine gültigen Benutzer für VDIs in bestimmten Linux-Distributionen, die von RES unterstützt werden. Mit diesem Fix wird beim Generieren eines Benutzernamens jedes „.“ im E-Mail-Präfix entfernt, sodass der Benutzername auf RES Linux-VDIs gültig ist.

Betroffene Versionen

RES-Versionen 2024.12 und 2024.12.01

Schadensbegrenzung

  1. Führen Sie die folgenden Befehle zum Herunterladen patch.py und cognito_sign_up_email_fix.patch für Version 2024.12 oder cognito_sign_up_email_fix.patch für Version 2024.12.01 aus und <output-directory> ersetzen Sie sie durch das Verzeichnis, in das Sie das Patch-Skript und die Patch-Datei herunterladen möchten, und <environment-name> durch den Namen Ihrer RES-Umgebung:

    1. Der Patch gilt für RES 2024.12 und 2024.12.01.

    2. Das Patch-Skript erfordert AWS CLI v2, Python 3.9.16 oder höher und Boto3.

    3. Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> ENVIRONMENT_NAME=<environment-name> RES_VERSION=<res-version> # either 2024.12 or 2024.12.01 mkdir -p ${OUTPUT_DIRECTORY} curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/${RES_VERSION}/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/${RES_VERSION}/patch_scripts/patches/cognito_sign_up_email_fix.patch --output ${OUTPUT_DIRECTORY}/cognito_sign_up_email_fix.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus:

    python3 ${OUTPUT_DIRECTORY}/patch.py --environment-name ${ENVIRONMENT_NAME} --res-version ${RES_VERSION} --module cluster-manager --patch ${OUTPUT_DIRECTORY}/cognito_sign_up_email_fix.patch
  3. Starten Sie die Cluster Manager-Instanz für Ihre Umgebung neu. Sie können die Instance auch über die Amazon EC2 Management Console beenden.

    INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-cluster-manager \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}
  4. Überprüfen Sie den Status der Cluster Manager-Instanz, indem Sie die Aktivität der Auto Scaling-Gruppe, beginnend mit dem Namen, überprüfen<RES-EnvironmentName>-cluster-manager-asg. Warten Sie, bis die neue Instanz erfolgreich gestartet wurde.

........................

(2024.12.01 und früher) Ungültiger fehlerhafter Zertifikatsfehler beim Herstellen einer Verbindung zu VDI über eine benutzerdefinierte Domäne

Beschreibung des Fehlers

Wenn Sie das Rezept für externe Ressourcen und RES mit einem benutzerdefinierten Portaldomänennamen bereitstellen, CertificateRenewalNode schlägt das Aktualisieren des TLS-Zertifikats für die VDI-Verbindung fehl und es wird folgende Fehlermeldung angezeigt: /var/log/user-data.log

{ "type": "urn:ietf:params:acme:error:unauthorized", "detail": "Error finalizing order :: OCSP must-staple extension is no longer available: see https://letsencrypt.org/2024/12/05/ending-ocsp", "status": 403 }

Daher wird beim Herstellen einer Verbindung zu Ihren VDIs im RES-Webportal ein Fehler mit der Angabe net::ERR_CERT_DATE_INVALID Error code: SSL_ERROR_BAD_CERT_DOMAIN (ChromeFireFox) oder () angezeigt.

Betroffene Versionen

2024.12.01 und früher

Schadensbegrenzung

  1. Navigieren Sie zur EC2-Konsole. Wenn eine Instanz benannt istCertificateRenewalNode-, beenden Sie die Instance.

  2. Navigieren Sie zur Lambda-Konsole. Öffnen Sie den Quellcode der genannten -CertificateRenewalLambda- Lambda-Funktion. Identifizieren Sie die Zeile, die mit beginnt, ./acme.sh --issue --dns dns_aws --ocsp-must-staple --keylength 4096 und entfernen Sie das --ocsp-must-staple Argument.

  3. Wählen Sie Bereitstellen und warten Sie, bis die Codeänderung wirksam wird.

  4. Um die Lambda-Funktion manuell auszulösen: Gehen Sie zur Registerkarte Test und wählen Sie dann Test aus. Es sind keine zusätzlichen Eingaben erforderlich. Dadurch sollte eine EC2-Zertifikatsinstanz erstellt werden, die das Zertifikat und die PrivateKey Geheimnisse in Secret Manager aktualisiert. Die Instanz wird automatisch beendet, sobald die Geheimnisse aktualisiert wurden.

  5. Beenden Sie die bestehende dcv-gateway-Instanz: <env-name>-vdc-gateway und warten Sie, bis die Auto Scaling-Gruppe automatisch eine neue bereitstellt.

Einzelheiten zum Fehler

Let's Encrypt stellt die OCSP-Unterstützung im Jahr 2025 ein. Ab dem 30. Januar 2025 schlagen Must-Staple OCSP-Anfragen fehl, es sei denn, das anfragende Konto hat zuvor ein Zertifikat ausgestellt, das die Erweiterung OCSP Must Staple enthält. Weitere Informationen finden Sie https://letsencrypt.org/2024/12/05/ending-ocsp/hier.

........................

(2024.12 und 2024.12.01) Active Directory-Benutzer können keine SSH-Verbindung zu Bastion Host herstellen

Beschreibung des Fehlers

Active Directory-Benutzer erhalten die Fehlermeldung „Zugriff verweigert“, wenn sie eine Verbindung zum Bastion Host herstellen, indem sie den Anweisungen des RES-Webportals folgen.

Die Python-Anwendung, die auf dem Bastion-Host ausgeführt wird, kann den SSSD-Dienst aufgrund einer fehlenden Umgebungsvariablen nicht starten. Aus diesem Grund sind AD-Benutzer dem Betriebssystem unbekannt und können sich nicht anmelden.

Betroffene Versionen

2024.12 und 2024.12.01

Schadensbegrenzung

  1. Stellen Sie von der EC2-Konsole aus eine Connect zur Bastion Host-Instance her.

  2. Bearbeiten /etc/environment und environment_name=<res-environment-name> als neue Zeile unter IDEA_CLUSTER_NAME hinzufügen.

  3. Führen Sie die folgenden Befehle auf der Instanz aus:

    source /etc/environment sudo service supervisord restart sudo systemctl restart supervisord
  4. Versuchen Sie erneut, eine Verbindung zum Bastion Host herzustellen, indem Sie den Anweisungen im RES-Webportal folgen.

........................

(2024.10) Der auto VDI-Stopp für RES-Umgebungen, die in isolierten VPCs bereitgestellt werden, ist unterbrochen

Beschreibung des Fehlers

Mit der RES-Version 2024.10 wurde VDI Auto Stop für VDIs hinzugefügt, die sich für einen bestimmten Zeitraum im Leerlauf befinden. Diese Einstellung kann unter Desktop-Einstellungen → Server → Sitzung konfiguriert werden.

VDI Auto Stop wird derzeit nicht für RES-Umgebungen unterstützt, die in isolierten VPCs bereitgestellt werden.

Betroffene Versionen

2024.10

Schadensbegrenzung

Wir arbeiten derzeit an einem Fix, der in einer future Version enthalten sein wird. Es ist jedoch immer noch möglich, VDIs in RES-Umgebungen, die in isolierten VPCs bereitgestellt werden, manuell zu stoppen.

........................

(2024.10 und früher) Fehler beim Starten von VDI für grafisch erweiterte Instance-Typen

Beschreibung des Fehlers

Wenn ein Amazon Linux 2-x86_64-, RHEL 8-x86_64- oder RHEL 9 x86_64-VDI auf einem grafisch erweiterten Instance-Typ (g4, g5) gestartet wird, bleibt die Instance im Bereitstellungsstatus hängen. Das bedeutet, dass die Instance niemals den Status „Bereit“ erreicht und für eine Verbindung verfügbar sein wird.

Das passiert, weil der X-Server die Instanzen nicht richtig instanziiert. Nachdem Sie diesen Patch installiert haben, empfehlen wir Ihnen außerdem, die Größe des Root-Volumes Ihrer Software-Stacks für Grafikinstanzen auf 50 GB zu erhöhen, um sicherzustellen, dass ausreichend Speicherplatz für die Installation aller Abhängigkeiten vorhanden ist.

Betroffene Versionen

Alle RES-Versionen 2024.10 oder früher.

Schadensbegrenzung

  1. Laden Sie patch.py und graphic_enhanced_instance_types_fix.patch herunter, indem Sie sie im folgenden Befehl durch das Verzeichnis <output-directory> ersetzen, in das Sie das Patch-Skript und die Patch-Datei herunterladen möchten, und durch den Namen Ihrer RES-Umgebung: <environment-name>

    1. Der Patch gilt nur für RES 2024.10.

    2. Das Patch-Skript erfordert AWS CLI v2, Python 3.9.16 oder höher und Boto3.

    3. Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> ENVIRONMENT_NAME=<environment-name> mkdir -p ${OUTPUT_DIRECTORY} curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.10/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.10/patch_scripts/patches/graphic_enhanced_instance_types_fix.patch --output ${OUTPUT_DIRECTORY}/graphic_enhanced_instance_types_fix.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus:

    python3 ${OUTPUT_DIRECTORY}/patch.py --environment-name ${ENVIRONMENT_NAME} --res-version 2024.10 --module virtual-desktop-controller --patch ${OUTPUT_DIRECTORY}/graphic_enhanced_instance_types_fix.patch
  3. Um die Virtual Desktop Controller (vdc-controller) -Instanz für Ihre Umgebung zu beenden, führen Sie die folgenden Befehle aus und ersetzen Sie dabei den Namen Ihrer RES-Umgebung an der angegebenen Stelle.

    INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-vdc-controller \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}
  4. Starten Sie eine neue Instanz, nachdem die Zielgruppe, die mit dem Namen beginnt, wieder gesund <RES-EnvironmentName>-vdc-ext ist. Wir empfehlen, dass alle neuen Software-Stacks, die Sie für Grafik-Instances registrieren, über mindestens 50 GB Speicherplatz verfügen.

........................

(2024.08) Vorbereitung eines Infrastruktur-AMI-Fehlers

Beschreibung des Fehlers

Wenn Sie AMIs mit EC2 Image Builder gemäß den Anweisungen in der Dokumentation zu den Voraussetzungen vorbereiten, schlägt der Erstellungsprozess mit der folgenden Fehlermeldung fehl:

CmdExecution: [ERROR] Command execution has resulted in an error

Dies ist auf Fehler in der Abhängigkeitsdatei zurückzuführen, die in der Dokumentation enthalten ist.

Betroffene Versionen

2024.08

Schadensbegrenzung

Erstellen Sie neue EC2 Image Builder Builder-Ressourcen:

(Gehen Sie wie folgt vor, wenn Sie noch nie AMIs für RES-Instances vorbereitet haben)

  1. Laden Sie die aktualisierte Datei res-installation-scripts.tar.gz herunter.

  2. Folgen Sie den Schritten, die unter Prepare Amazon Machine Images (AMIs) auf der Seite Voraussetzungen aufgeführt sind.

Wiederverwendung früherer EC2 Image Builder Builder-Ressourcen:

(Gehen Sie wie folgt vor, wenn Sie AMIs für RES-Instances vorbereitet haben)

  1. Laden Sie die aktualisierte Datei res-installation-scripts.tar.gz herunter.

  2. Navigieren Sie zu EC2 Image Builder → Komponenten → Klicken Sie auf die Komponente, die für die Vorbereitung von RES-AMIs erstellt wurde.

  3. Notieren Sie sich den S3-Speicherort, der unter Inhalt → DownloadRESInstallScripts Schritt → Eingaben → Quelle aufgeführt ist.

  4. Der oben angegebene S3-Speicherort enthält die Abhängigkeitsdatei, die zuvor verwendet wurde. Ersetzen Sie diese Datei durch die Datei, die Sie im ersten Schritt heruntergeladen haben.

........................

(2024.08) Virtuelle Desktops können den read/write Amazon S3 S3-Bucket mit Root-Bucket-ARN und benutzerdefiniertem Präfix nicht mounten

Beschreibung des Fehlers

Research and Engineering Studio 2024.08 kann read/write S3-Buckets nicht auf einer VDI-Instanz (Virtual Desktop Infrastructure) mounten, wenn ein Root-Bucket-ARN (d. h.arn:aws:s3:::example-bucket) und ein benutzerdefiniertes Präfix (Projektname oder Projektname und Benutzername) verwendet werden.

Zu den Bucket-Konfigurationen, die von diesem Problem nicht betroffen sind, gehören:

  • Buckets mit Schreibschutz

  • read/write Buckets mit einem Präfix als Teil des Bucket ARN (d. h.arn:aws:s3:::example-bucket/example-folder-prefix) und einem benutzerdefinierten Präfix (Projektname oder Projektname und Benutzername)

  • read/write Buckets mit einem Root-Bucket-ARN, aber ohne benutzerdefiniertes Präfix

Nachdem Sie eine VDI-Instanz bereitgestellt haben, wird der Bucket im angegebenen Mount-Verzeichnis für diesen S3-Bucket nicht bereitgestellt. Das Mount-Verzeichnis auf dem VDI wird zwar vorhanden sein, das Verzeichnis ist jedoch leer und enthält nicht den aktuellen Inhalt des Buckets. Wenn Sie mit dem Terminal eine Datei in das Verzeichnis schreiben, Permission denied, unable to write a file wird der Fehler ausgelöst und der Dateiinhalt wird nicht in den entsprechenden S3-Bucket hochgeladen.

Betroffene Versionen

2024.08

Schadensbegrenzung

  1. Um das Patch-Skript und die Patch-Datei (patch.pyunds3_mount_custom_prefix_fix.patch) herunterzuladen, führen Sie den folgenden Befehl aus und <output-directory> ersetzen Sie ihn durch das Verzeichnis, in das Sie das Patch-Skript und die Patch-Datei herunterladen möchten, sowie <environment-name> durch den Namen Ihrer RES-Umgebung:

    1. Der Patch gilt nur für RES 2024.08.

    2. Das Patch-Skript erfordert AWS CLI v2, Python 3.9.16 oder höher und Boto3.

    3. Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über Amazon S3 S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> ENVIRONMENT_NAME=<environment-name> mkdir -p ${OUTPUT_DIRECTORY} curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.08/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.08/patch_scripts/patches/s3_mount_custom_prefix_fix.patch --output ${OUTPUT_DIRECTORY}/s3_mount_custom_prefix_fix.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus:

    python3 ${OUTPUT_DIRECTORY}/patch.py --environment-name ${ENVIRONMENT_NAME} --res-version 2024.08 --module virtual-desktop-controller --patch ${OUTPUT_DIRECTORY}/s3_mount_custom_prefix_fix.patch
  3. Führen Sie die folgenden Befehle aus, um die Virtual Desktop Controller (vdc-controller) -Instanz für Ihre Umgebung zu beenden. (Sie haben die ENVIRONMENT_NAME Variable bereits im ersten Schritt auf den Namen Ihrer RES-Umgebung gesetzt.)

    INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-vdc-controller \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}
    Anmerkung

    Stellen Sie bei privaten VPC-Setups sicher, dass Sie für die <RES-EnvironmentName>-vdc-custom-credential-broker-lambda Funktion das Environment variable mit dem Namen AWS_STS_REGIONAL_ENDPOINTS und dem Wert von hinzufügen, falls Sie dies noch nicht getan haben. regional Weitere Informationen finden Sie unter Voraussetzungen für Amazon S3 S3-Buckets für isolierte VPC-Bereitstellungen.

  4. Sobald die Zielgruppe, die mit dem Namen beginnt, gesund <RES-EnvironmentName>-vdc-ext ist, müssen neue VDIs gestartet werden, für die die read/write S3-Buckets mit Root-Bucket-ARN und benutzerdefiniertem Präfix korrekt gemountet sind.

........................

(2024.06) Snapshot anwenden schlägt fehl, wenn der AD-Gruppenname Leerzeichen enthält

Problem

RES 2024.06 kann keine Snapshots aus früheren Versionen anwenden, wenn die Namen der AD-Gruppen Leerzeichen enthalten.

Die CloudWatch Cluster-Manager-Protokolle (unter der /<environment-name>/cluster-manager Protokollgruppe) werden während der AD-Synchronisierung den folgenden Fehler enthalten:

[apply-snapshot] authz.role-assignments/<Group name with spaces>:group#<projectID>:project FAILED_APPLY because: [INVALID_PARAMS] Actor key doesn't match the regex pattern ^[a-zA-Z0-9_.][a-zA-Z0-9_.-]{1,20}:(user|group)$

Der Fehler ist darauf zurückzuführen, dass RES nur Gruppennamen akzeptiert, die die folgenden Anforderungen erfüllen:

  • Er kann nur ASCII-Kleinbuchstaben und -großbuchstaben, Ziffern, Bindestriche (-), Punkte (.) und Unterstriche (_) enthalten

  • Ein Bindestrich (-) ist als erstes Zeichen nicht zulässig

  • Er darf keine Leerzeichen enthalten.

Betroffene Versionen

2024.06

Schadensbegrenzung

  1. Um das Patch-Skript und die Patch-Datei (patch.py und groupname_regex.patch) herunterzuladen, führen Sie den folgenden Befehl aus und <output-directory> ersetzen Sie ihn durch das Verzeichnis, in dem Sie die Dateien ablegen möchten, und <environment-name> durch den Namen Ihrer RES-Umgebung:

    1. Der Patch gilt nur für RES 2024.06

    2. Das Patch-Skript erfordert AWS CLI v2, Python 3.9.16 oder höher und Boto3.

    3. Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben:

      OUTPUT_DIRECTORY=<output-directory> ENVIRONMENT_NAME=<environment-name> mkdir -p ${OUTPUT_DIRECTORY} curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.06/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.06/patch_scripts/patches/groupname_regex.patch --output ${OUTPUT_DIRECTORY}/groupname_regex.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus:

    python3 patch.py --environment-name ${ENVIRONMENT_NAME} --res-version 2024.06 --module cluster-manager --patch ${OUTPUT_DIRECTORY}/groupname_regex.patch
  3. Um die Cluster Manager-Instance für Ihre Umgebung neu zu starten, führen Sie die folgenden Befehle aus: Sie können die Instance auch über die Amazon EC2 Management Console beenden.

    INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-cluster-manager \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}
Anmerkung

Der Patch ermöglicht es AD-Gruppennamen, ASCII-Klein- und Großbuchstaben, Ziffern, Bindestriche (-), Punkte (.), Unterstriche (_) und Leerzeichen mit einer Gesamtlänge zwischen 1 und 30 (einschließlich) zu enthalten.

........................

(2024.06 und früher) Gruppenmitglieder wurden während der AD-Synchronisierung nicht mit RES synchronisiert

Beschreibung des Fehlers

Gruppenmitglieder werden nicht richtig mit RES synchronisiert, wenn sich die GroupOU von der UserOU unterscheidet.

RES erstellt einen Ldapsearch-Filter, wenn versucht wird, Benutzer aus einer AD-Gruppe zu synchronisieren. Der aktuelle Filter verwendet fälschlicherweise den UserOU-Parameter anstelle des GroupOU-Parameters. Das Ergebnis ist, dass die Suche keine Benutzer zurückgibt. Dieses Verhalten tritt nur in Fällen auf, in denen sich UserSOU und GroupOU unterscheiden.

Betroffene Versionen

Alle RES-Versionen 2024.06 oder früher

Schadensbegrenzung

Gehen Sie wie folgt vor, um das Problem zu lösen:

  1. Um das Skript patch.py und die Datei group_member_sync_bug_fix.patch herunterzuladen, führen Sie die folgenden Befehle aus. <output-directory> Ersetzen Sie dabei das lokale Verzeichnis, in das Sie die Dateien herunterladen möchten, und <res_version> durch die RES-Version, die Sie patchen möchten:

    Anmerkung
    OUTPUT_DIRECTORY=<output-directory> RES_VERSION=<res_version> mkdir -p ${OUTPUT_DIRECTORY} curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/${RES_VERSION}/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/${RES_VERSION}/patch_scripts/patches/${RES_VERSION}_group_member_sync_bug_fix.patch --output ${OUTPUT_DIRECTORY}/${RES_VERSION}_group_member_sync_bug_fix.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus und <environment-name> ersetzen Sie ihn durch den Namen Ihrer RES-Umgebung:

    cd ${OUTPUT_DIRECTORY} ENVIRONMENT_NAME=<environment-name> python3 patch.py --environment-name ${ENVIRONMENT_NAME} --res-version ${RES_VERSION} --module cluster-manager --patch $PWD/${RES_VERSION}_group_member_sync_bug_fix.patch
  3. Führen Sie die folgenden Befehle aus, um die Cluster-Manager-Instanz für Ihre Umgebung neu zu starten:

    INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-cluster-manager \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}

........................

(2024.06 und früher) CVE-2024-6387, RegressHion, Sicherheitslücke in RHEL9 und Ubuntu VDIs

Beschreibung des Fehlers

CVE-2024-6387, genannt RegressHion, wurde auf dem OpenSSH-Server identifiziert. Diese Sicherheitsanfälligkeit ermöglicht es nicht authentifizierten Angreifern, beliebigen Code auf dem Zielserver auszuführen, was ein ernstes Risiko für Systeme darstellt, die OpenSSH für sichere Kommunikation verwenden.

Für RES besteht die Standardkonfiguration darin, über den Bastion-Host SSH auf virtuelle Desktops zuzugreifen, und der Bastion-Host ist von dieser Sicherheitsanfälligkeit nicht betroffen. Das Standard-AMI (Amazon Machine Image), das wir für RHEL9- und Ubuntu2024-VDIs (Virtual Desktop Infrastructure) in ALLEN RES-Versionen bereitstellen, verwendet jedoch eine OpenSSH-Version, die anfällig für Sicherheitsbedrohungen ist.

Das bedeutet, dass bestehende RHEL9- und Ubuntu2024-VDIs ausgenutzt werden könnten, der Angreifer jedoch Zugriff auf den Bastion-Host benötigen würde.

Weitere Informationen zu dem Problem finden Sie hier.

Betroffene Versionen

Alle RES-Versionen 2024.06 oder früher.

Schadensbegrenzung

Sowohl RHEL9 als auch Ubuntu haben Patches für OpenSSH veröffentlicht, die die Sicherheitslücke beheben. Diese können mit dem jeweiligen Paketmanager der Plattform abgerufen werden.

Wenn Sie bereits RHEL9- oder Ubuntu-VDIs haben, empfehlen wir, die folgenden Anweisungen zum PATCHEN VORHANDENER VDIs zu befolgen. Um future VDIs zu patchen, empfehlen wir, die Anweisungen PATCH FUTURE VDIs zu befolgen. In diesen Anweisungen wird beschrieben, wie Sie ein Skript ausführen, um das Plattform-Update auf Ihre VDIs anzuwenden.

PATCHEN SIE VORHANDENE VDIs
  1. Führen Sie den folgenden Befehl aus, um alle vorhandenen Ubuntu- und RHEL9-VDIs zu patchen:

    1. Das Patch-Skript benötigt AWS CLI v2.

    2. Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über AWS Systems Manager Manager-Berechtigungen zum Senden eines Systems Manager Manager-Ausführungsbefehls verfügen.

      aws ssm send-command \ --document-name "AWS-RunRemoteScript" \ --targets "Key=tag:res:NodeType,Values=virtual-desktop-dcv-host" \ --parameters '{"sourceType":["S3"],"sourceInfo":["{\"path\":\"https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.06/patch_scripts/scripts/patch_openssh.sh\"}"],"commandLine":["bash patch_openssh.sh"]}'
  2. Sie können auf der Seite „Befehl ausführen“ überprüfen, ob das Skript erfolgreich ausgeführt wurde. Klicken Sie auf die Registerkarte Befehlsverlauf, wählen Sie die neueste Befehls-ID aus und überprüfen Sie, ob alle Instanz-IDs eine SUCCESS-Meldung haben.

PATCHEN SIE ZUKÜNFTIGE VDIs
  1. Um das Patch-Skript und die Patch-Datei (patch.py und update_openssh.patch) herunterzuladen, führen Sie die folgenden Befehle aus und <output-directory> ersetzen Sie sie durch das Verzeichnis, in das Sie die Dateien herunterladen möchten, und <environment-name> durch den Namen Ihrer RES-Umgebung:

    Anmerkung
    • Der Patch gilt nur für RES 2024.06.

    • Das Patch-Skript erfordert AWS CLI (v2), Python 3.9.16 oder höher und Boto3.

    • Konfigurieren Sie Ihre Kopie der AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> ENVIRONMENT_NAME=<environment-name> curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.06/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.06/patch_scripts/patches/update_openssh.patch --output ${OUTPUT_DIRECTORY}/update_openssh.patch
  2. Führen Sie den folgenden Patch-Befehl aus:

    python3 ${OUTPUT_DIRECTORY}/patch.py --environment-name ${ENVIRONMENT_NAME} --res-version 2024.06 --module virtual-desktop-controller --patch ${OUTPUT_DIRECTORY}/update_openssh.patch
  3. Starten Sie die VDC Controller-Instanz für Ihre Umgebung mit den folgenden Befehlen neu:

    INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-vdc-controller \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}
Wichtig

Das Patchen future VDIs wird nur in den RES-Versionen 2024.06 und höher unterstützt. Um future VDIs in RES-Umgebungen mit Versionen vor 2024.06 zu patchen, aktualisieren Sie zunächst die RES-Umgebung auf 2024.06, indem Sie die Anweisungen unter verwenden:. Aktualisierungen der Hauptversionen

........................

(2024.04-2024.04.02) Die angegebene IAM-Berechtigungsgrenze ist nicht an die Rolle der VDI-Instanzen gebunden

Das Problem

Virtuelle Desktop-Sitzungen erben die Konfiguration der Berechtigungsgrenzen ihres Projekts nicht ordnungsgemäß. Dies ist darauf zurückzuführen, dass die durch den IAMPermissionBoundary Parameter definierte Berechtigungsgrenze einem Projekt bei der Erstellung dieses Projekts nicht ordnungsgemäß zugewiesen wurde.

Betroffene Versionen

2024.04 - 2024.04.02

Schadensbegrenzung

Gehen Sie wie folgt vor, damit VDIs die einem Projekt zugewiesene Rechtegrenze ordnungsgemäß übernehmen können:

  1. Um das Patch-Skript und die Patch-Datei (patch.py und vdi_host_role_permission_boundary.patch) herunterzuladen, führen Sie den folgenden Befehl aus und ersetzen Sie ihn durch das lokale Verzeichnis, in dem Sie die Dateien ablegen möchten: <output-directory>

    1. Der Patch gilt nur für RES 2024.04.02. Wenn Sie Version 2024.04 oder 2024.04.01 verwenden, können Sie die im öffentlichen Dokument für kleinere Versionsupdates aufgeführten Schritte befolgen, um Ihre Umgebung auf 2024.04.02 zu aktualisieren.

    2. Das Patch-Skript erfordert AWS CLI (v2), Python 3.9.16 oder höher und Boto3.

    3. Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.04.02/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.04.02/patch_scripts/patches/vdi_host_role_permission_boundary.patch --output ${OUTPUT_DIRECTORY}/vdi_host_role_permission_boundary.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus und <environment-name> ersetzen Sie ihn durch den Namen Ihrer RES-Umgebung:

    python3 patch.py --environment-name <environment-name> --res-version 2024.04.02 --module cluster-manager --patch vdi_host_role_permission_boundary.patch
  3. Starten Sie die Cluster-Manager-Instanz in Ihrer Umgebung neu, indem Sie diesen Befehl ausführen und ihn durch den Namen Ihrer RES-Umgebung <environment-name> ersetzen. Sie können die Instance auch über die Amazon EC2 Management Console beenden.

    ENVIRONMENT_NAME=<environment-name> INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-cluster-manager \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}

........................

(2024.04.02 und früher) Windows NVIDIA-Instanzen in ap-southeast-2 (Sydney) können nicht gestartet werden

Das Problem

Amazon Machine Images (AMIs) werden verwendet, um virtuelle Desktops (VDIs) in RES mit bestimmten Konfigurationen einzurichten. Jedem AMI ist eine ID zugeordnet, die sich je nach Region unterscheidet. Die in RES zum Starten von Windows Nvidia-Instances in ap-southeast-2 (Sydney) konfigurierte AMI-ID ist derzeit falsch.

AMI-ID ami-0e190f8939a996caffür diese Art von Instanzkonfiguration ist fälschlicherweise in ap-southeast-2 (Sydney) aufgeführt. Stattdessen ami-027cf6e71e2e442f4 sollte die AMI-ID verwendet werden.

Benutzer erhalten die folgende Fehlermeldung, wenn sie versuchen, eine Instance mit dem ami-0e190f8939a996caf Standard-AMI zu starten.

An error occured (InvalidAMIID.NotFound) when calling the RunInstances operation: The image id ‘[ami-0e190f8939a996caf]’ does not exist

Schritte zur Reproduktion des Fehlers, einschließlich einer Beispielkonfigurationsdatei:

  • Stellen Sie RES in der ap-southeast-2 bereit.

  • Starten Sie eine Instance mit dem Windows-NVIDIA Standard-Software-Stack (AMI-IDami-0e190f8939a996caf).

Betroffene Versionen

Alle RES-Versionen 2024.04.02 oder früher sind betroffen

Schadensbegrenzung

Die folgende Abhilfemaßnahme wurde auf der RES-Version 2024.01.01 getestet:

  • Registrieren Sie einen neuen Software-Stack mit den folgenden Einstellungen

    • AMI ID: ami-027cf6e71e2e442f4

    • Betriebssystem: Windows

    • GPU-Hersteller: NVIDIA

    • Min. Speichergröße (GB): 30

    • min. RAM (GB): 4

  • Verwenden Sie diesen Software-Stack, um Windows-NVIDIA Instances zu starten

........................

(2024.04 und 2024.04.01) RES-Löschfehler in GovCloud

Das Problem

Während des RES-Löschworkflows inaktiviert UnprotectCognitoUserPool Lambda den Löschschutz für Cognito-Benutzerpools, die später gelöscht werden. Die Lambda-Ausführung wird von der InstallerStateMachine gestartet.

Aufgrund der Unterschiede in der AWS Standard-CLI-Version zwischen Commercial und GovCloud Regionen schlägt der update_user_pool Aufruf im Lambda in GovCloud Regionen fehl.

Kunden erhalten die folgende Fehlermeldung, wenn sie versuchen, RES in GovCloud Regionen zu löschen:

Parameter validation failed: Unknown parameter in input: \"DeletionProtection\", must be one of: UserPoolId, Policies, LambdaConfig, AutoVerifiedAttributes, SmsVerificationMessage, EmailVerificationMessage, EmailVerificationSubject, VerificationMessageTemplate, SmsAuthenticationMessage, MfaConfiguration, DeviceConfiguration, EmailConfiguration, SmsConfiguration, UserPoolTags, AdminCreateUserConfig, UserPoolAddOns, AccountRecoverySetting

Schritte zur Reproduktion des Fehlers:

  • Stellen Sie RES in einer GovCloud Region bereit

  • Löschen Sie den RES-Stack

Betroffene Versionen

RES-Versionen 2024.04 und 2024.04.01

Schadensbegrenzung

Die folgende Abhilfemaßnahme wurde auf der RES-Version 2024.04 getestet:

  • Öffne das UnprotectCognitoUserPool Lambda

    • Benennungskonvention: <env-name>-InstallerTasksUnprotectCognitoUserPool-...

  • Laufzeiteinstellungen -> Bearbeiten -> Laufzeit wählen Python 3.11 -> Speichern.

  • Öffnen CloudFormation.

  • RES-Stack löschen -> Retain Installer Resource DEAKTIVIERT lassen -> Löschen.

........................

(2024.04 - 2024.04.02) Der virtuelle Linux-Desktop steckt beim Neustart möglicherweise im Status „RESUMING“ fest

Das Problem

Virtuelle Linux-Desktops können im Status „FORTSETZEN“ hängen bleiben, wenn sie nach einem manuellen oder geplanten Stopp neu gestartet werden.

Nach dem Neustart der Instanz führt der AWS Systems Manager keine Remotebefehle aus, um eine neue DCV-Sitzung zu erstellen, und die folgende Protokollmeldung fehlt in den CloudWatch vdc-Controller-Protokollen (unter der Protokollgruppe): /<environment-name>/vdc/controller CloudWatch

Handling message of type DCV_HOST_REBOOT_COMPLETE_EVENT

Betroffene Versionen

2024.04 - 2024.04.02

Schadensbegrenzung

Gehen Sie wie folgt vor, um die virtuellen Desktops wiederherzustellen, die sich im Status „RESUMING“ befinden:

  1. Stellen Sie von der EC2-Konsole aus eine SSH-Verbindung zur Probleminstanz her.

  2. Führen Sie die folgenden Befehle auf der Instance aus:

    sudo su - /bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/configure_post_reboot.sh sudo reboot
  3. Warten Sie, bis die Instanz neu gestartet wird.

Um zu verhindern, dass bei neuen virtuellen Desktops dasselbe Problem auftritt:

  1. Um das Patch-Skript und die Patch-Datei (patch.py und vdi_stuck_in_resuming_status.patch) herunterzuladen, führen Sie den folgenden Befehl aus und ersetzen Sie ihn durch das Verzeichnis, in dem Sie die Dateien ablegen möchten: <output-directory>

    Anmerkung
    • Der Patch gilt nur für RES 2024.04.02.

    • Das Patch-Skript erfordert AWS CLI v2, Python 3.9.16 oder höher und Boto3.

    • Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.04.02/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.04.02/patch_scripts/patches/vdi_stuck_in_resuming_status.patch --output ${OUTPUT_DIRECTORY}/vdi_stuck_in_resuming_status.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus und <environment-name> ersetzen Sie ihn durch den Namen Ihrer RES-Umgebung und <aws-region> durch die Region, in der RES bereitgestellt wird:

    python3 patch.py --environment-name <environment-name> --res-version 2024.04.02 --module virtual-desktop-controller --patch vdi_stuck_in_resuming_status.patch --region <aws-region>
  3. Um die VDC Controller-Instanz für Ihre Umgebung neu zu starten, führen Sie die folgenden Befehle aus und <environment-name> ersetzen Sie sie durch den Namen Ihrer RES-Umgebung:

    ENVIRONMENT_NAME=<environment-name> INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-vdc-controller \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}

........................

(2024.04.02 und früher) Fehler beim Synchronisieren von AD-Benutzern, deren SAMAccountName Attribut Großbuchstaben oder Sonderzeichen enthält

Das Problem

RES kann AD-Benutzer nicht synchronisieren, nachdem SSO für mindestens zwei Stunden eingerichtet wurde (zwei AD-Synchronisierungszyklen). Die CloudWatch Cluster-Manager-Protokolle (in der /<environment-name>/cluster-manager Protokollgruppe) enthalten den folgenden Fehler bei der AD-Synchronisierung:

Error: [INVALID_PARAMS] Invalid params: user.username must match regex: ^(?=.{3,20}$)(?![_.])(?!.*[_.]{2})[a-z0-9._]+(?<![_.])$

Der Fehler ist darauf zurückzuführen, dass RES nur einen SAMAccount-Benutzernamen akzeptiert, der die folgenden Anforderungen erfüllt:

  • Er kann nur ASCII-Kleinbuchstaben, Ziffern, Punkte (.) und Unterstriche (_) enthalten.

  • Ein Punkt oder Unterstrich ist als erstes oder letztes Zeichen nicht zulässig.

  • Es darf nicht zwei aufeinanderfolgende Punkte oder Unterstriche enthalten (z. B..., __, ._, _.).

Betroffene Versionen

2024.04.02 und früher

Schadensbegrenzung

  1. Um das Patch-Skript und die Patch-Datei (patch.py und samaccountname_regex.patch) herunterzuladen, führen Sie den folgenden Befehl aus und ersetzen Sie ihn durch das Verzeichnis, in <output-directory> dem Sie die Dateien ablegen möchten:

    Anmerkung
    • Der Patch gilt nur für RES 2024.04.02.

    • Das Patch-Skript erfordert AWS CLI v2, Python 3.9.16 oder höher und Boto3.

    • Konfigurieren Sie die AWS CLI für das Konto und die Region, in der RES bereitgestellt wird, und stellen Sie sicher, dass Sie über S3-Berechtigungen verfügen, um in den von RES erstellten Bucket zu schreiben.

    OUTPUT_DIRECTORY=<output-directory> curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.04.02/patch_scripts/patch.py --output ${OUTPUT_DIRECTORY}/patch.py curl https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.04.02/patch_scripts/patches/samaccountname_regex.patch --output ${OUTPUT_DIRECTORY}/samaccountname_regex.patch
  2. Navigieren Sie zu dem Verzeichnis, in das das Patch-Skript und die Patch-Datei heruntergeladen wurden. Führen Sie den folgenden Patch-Befehl aus und <environment-name> ersetzen Sie ihn durch den Namen Ihrer RES-Umgebung:

    python3 patch.py --environment-name <environment-name> --res-version 2024.04.02 --module cluster-manager --patch samaccountname_regex.patch
  3. Um die Cluster Manager-Instanz für Ihre Umgebung neu zu starten, führen Sie die folgenden Befehle aus und <environment-name> ersetzen Sie sie durch den Namen Ihrer RES-Umgebung. Sie können die Instance auch über die Amazon EC2 Management Console beenden.

    ENVIRONMENT_NAME=<environment-name> INSTANCE_ID=$(aws ec2 describe-instances \ --filters \ Name=tag:Name,Values=${ENVIRONMENT_NAME}-cluster-manager \ Name=tag:res:EnvironmentName,Values=${ENVIRONMENT_NAME}\ --query "Reservations[0].Instances[0].InstanceId" \ --output text) aws ec2 terminate-instances --instance-ids ${INSTANCE_ID}

........................

(2024.04.02 und früher) Der private Schlüssel für den Zugriff auf den Bastion-Host ist ungültig

Das Problem

Wenn ein Benutzer den privaten Schlüssel für den Zugriff auf den Bastion-Host vom RES-Webportal herunterlädt, ist der Schlüssel nicht richtig formatiert — mehrere Zeilen werden als eine einzige Zeile heruntergeladen, wodurch der Schlüssel ungültig wird. Der Benutzer erhält die folgende Fehlermeldung, wenn er versucht, mit dem heruntergeladenen Schlüssel auf den Bastion-Host zuzugreifen:

Load key "<downloaded-ssh-key-path>": error in libcrypto <user-name>@<bastion-host-public-ip>: Permission denied (publickey,gssapi-keyex,gssapi-with-mic)

Betroffene Versionen

2024.04.02 und früher

Schadensbegrenzung

Wir empfehlen, Chrome zum Herunterladen der Schlüssel zu verwenden, da dieser Browser davon nicht betroffen ist.

Alternativ kann die Schlüsseldatei neu formatiert werden, indem eine neue Zeile danach -----BEGIN PRIVATE KEY----- und eine weitere neue Zeile unmittelbar davor erstellt wird. -----END PRIVATE KEY-----

........................