Ubuntu 22 Runtime 설치 및 구성

Ubuntu 22에서 Runtime은 권한이 없는 사용자로 실행되어 사이버 공격 표면을 줄여 사이버 보안을 강화합니다. 모든 요구 사항이 충족되었는지 확인한 후, Runtime 설치 및 구성을 진행합니다.
노트: 사용 가능한 설정에 대한 개요는 Runtime 구성 항목을 참조하십시오.

요구 사항

Ubuntu 22에 Runtime을 설치하려면 다음과 같이 진행하십시오.
  • 장치에서 실행 중인 커널 버전 또는 현재 커널 버전의 linux-headers가 최신인지 확인합니다.
  • .NET Runtime 10이 설치되어 있는지 확인합니다. 이것이 아직 설치되지 않은 상태에서 장치가 인터넷에 연결되면 Runtime 설치 중에 자동으로 다운로드되어 설치됩니다.
  • X11 Window System을 설치하여
    원격 데스크톱
    기능을 활성화합니다. 대신 Wayland가 설치 및 활성화되어 있는 경우 다음 파일을 편집하여 비활성화합니다.
    /etc/gdm3/custom.conf
    또는
    /etc/gdm3/daemon.conf
    #을 제거하여 다음 줄의 주석 처리를 제거합니다.
    #WaylandEnable=false
  • Runtime을 실행할 권한 없는 표준 사용자에 대해, 사용자 ID가
    uid=9879
    이고, 그룹 ID가
    gid=9879
    인
    remoteaccess_runtime
    이라는 사용자 이름이 시스템에 존재하지 않는지 확인합니다.
  • 다음 패키지를 설치하여 설치 관리자와 SetupHost 및 Runtime 서비스를 모두 실행합니다.
    • useradd
      및
      groupadd
      :
      sudo apt-get install passwd
      를 입력하여 설치합니다.
    • xdpyinfo
      :
      sudo apt-get install x11-utils
      를 입력하여 설치합니다.
    • xhost
      :
      sudo apt-get install x11-xserver-utils
      를 입력하여 설치합니다.
    • mknod
      ,
      readlink
      ,
      tr
      ,
      who
      :
      sudo apt-get install coreutils
      를 입력하여 설치합니다.
    • iptables
      :
      sudo apt-get install iptables
      를 입력하여 설치합니다.
    • brctl
      :
      sudo apt-get install bridge-utils
      를 입력하여 설치합니다.
    • dhclient
      :
      sudo apt-get install isc-dhcp-client
      를 입력하여 설치합니다.
    • setcap
      :
      sudo apt-get install libcap2-bin
      를 입력하여 설치합니다.
    • setfacl
      :
      sudo apt-get install acl
      를 입력하여 설치합니다.
    • awk
      :
      sudo apt-get install gawk
      를 입력하여 설치합니다.
    • systemd-run
      ,
      systemctl
      ,
      resolvectl
      ,
      loginctl
      :
      sudo apt-get install systemd
      를 입력하여 설치합니다.
    노트: 호스트 초기화 단계에서
    FactoryTalkRemoteAccessSetupHost.service
    에 의해 실행되는 일부 스크립트는 호스트 시스템에서 작동하기 위해 이러한 명령이 필요합니다. 이러한 명령 중 하나라도 누락되면 스크립트의 실행이 중지될 수 있습니다.
  • 기본 세션 사용자가 루트 폴더 사용자 또는 sudoers 그룹 사용자로 구성되어 있고, 해당
    sbin
    폴더가
    PATH
    환경 변수에 포함되어 있는지 확인합니다. sudoers 그룹에 사용자를 추가하려면 다음 명령을 사용합니다.
    su -l
    usermod -aG sudo <UserToAdd>

Runtime 설치 및 구성

  1. 원격 장치에서 Ubuntu 22 배포판과 관련된
    FactoryTalk® Remote Access™
    Runtime 패키지를 다운로드하고 다음과 같은 설치 명령을 실행합니다.
    sudo apt install ./FactoryTalkRemoteAccessRuntime_Ubuntu22_<version>.deb
    그런 다음
    <version>
    을 실제 버전으로 바꿉니다.
    노트: Runtime을 다운로드하려면 Tools 항목을 참조하십시오.
    중요: 이전 Runtime 버전을 업데이트하는 경우 특정 보안 설정을 활성화하라는 메시지가 표시될 수 있습니다.
    파일 전송 보안 제한
    및
    프로세스 보안 제한
    . 이러한 설정은 Runtime 사용자 인터페이스의
    설정
    섹션에 위치합니다.
  2. 시스템은 여러 검사를 수행하고 다음을 생성합니다.
    • FactoryTalkRemoteAccessSetupHost.service
    • FactoryTalkRemoteAccessRuntimeService.service
  3. FactoryTalkRemoteAccessSetupHost.service
    에서 필요한 경우
    [OPTIONS]
    를 교체합니다.
    --enable-vpn <adapter-list> Configure the host to enable VPN on the Runtime ad running time. The adapter-list is a single parameter that contains a list of adapter names separated by a comma (,). A conventional network bridge interface will be created on each of them to perform VPN. Example: --enable-vpn eth0,eth1 --enable-p2p-vpn Configure the host to enable Point-to-Point VPN on the Runtime at running time. -v, --verbose Print detailed logs for troubleshooting.
    쉼표를 사용하여
    <adapter-list>
    에 언급된 인터페이스를 구분합니다. 예:
    eth0,eth1,eth2
    . 이 스크립트는 지정된 각 인터페이스에 대해 표준 네트워크 브리지 인터페이스를 생성합니다.
    노트: 표준 네트워크 브리지를 설정하는 동안, 스크립트는
    <adapter-list>
    에 나열된 모든 인터페이스에 대해 tap과 bridge가 아직 없는 경우 각각
    -tap
    및
    -bridge
    를 접미사로 추가합니다. 스크립트는 Linux에서 부과하는 15자 제한을 준수합니다.
    • 인터페이스 잘림이 없는 경우:
      • 어댑터 이름(문자 길이 4):
        eth0
      • 탭 이름(문자 길이 8):
        eth0-tap
      • 브리지 이름(문자 길이 8):
        eth0-bridge
    • 인터페이스 잘림이 있는 경우:
      • 어댑터 이름(문자 길이 9):
        enp0s31f6
      • 탭 이름(문자 길이 13):
        enp0s31f6-tap
      • 브리지 이름(문자 길이 15):
        enp0s31f-bridge
        . 문자 길이 제한을 고려할 때, 여기서 어댑터 이름 잘림은
        6
        이라는 숫자가 제거되는 방식으로 이루어집니다.
        최대 문자 길이 제한은 앞의 예시와 이름 길이가 같거나 더 긴 모든 브리지 및 탭 인터페이스에 영향을 미칩니다.
노트:
Runtime 바이너리는 다음 폴더에 설치됩니다.
/opt/Rockwell_Automation/FactoryTalk_Remote_Access/Runtime/bin
Runtime 로그는 다음 폴더에서 사용할 수 있습니다.
/opt/Rockwell_Automation/FactoryTalk_Remote_Access/Runtime/log

Runtime 시작

  1. Runtime을 시작하려면
    /etc/systemd/system
    폴더에서
    sudo systemctl start FactoryTalkRemoteAccessSetupHost.service
    명령을 실행합니다.
  2. sudo systemctl status FactoryTalkRemoteAccessRuntimeService.service
    를 입력하여
    FactoryTalkRemoteAccessRuntimeService.service
    서비스가 실행 중인지 확인합니다.

FactoryTalk Remote Access 네트워크 인프라에 Runtime 연결

다음 명령을 사용하여 Runtime을 FactoryTalk Remote Access 네트워크 인프라에 연결합니다.
  • FactoryTalkRemoteAccessRuntimeCli --connect
  • FactoryTalkRemoteAccessRuntimeCli --getAnonymousID
노트: Runtime 구성에서
설정
섹션을 참조하여 GUI를 사용하여 Runtime을
FactoryTalk® Remote Access™
네트워크 인프라와 연결하는 방법을 알아보십시오.

Runtime 구성

노트: 이 주제에 대한 자세한 내용은 Runtime 구성 항목을 참조하십시오.

직렬 패스스루 구성

노트: 이 기능은 Ubuntu 22에서 지원되지 않습니다.
직렬 포트의 원격 사용을 활성화려면 경로
/dev/serial<interface number>
에서 인터페이스에 심볼릭 링크를 추가하십시오.
예:
직렬 인터페이스
/dev/ttyS0
이 장착된 시스템에서 다음 명령을 실행합니다.
ln -s /dev/ttyS0 /dev/serial0

암호 설정

권한이 없는 사용자가 Runtime에 액세스하지 못하도록 하려면 암호를 설정합니다. 암호를 설정하면 Runtime을 시작할 때 브라우저 인증 페이지가 열립니다.
Runtime 구성에 액세스하려면 브라우저 표시줄에
https://localhost:5161
을 입력합니다.
노트: 암호를 설정하려면
sudo
권한이 있어야 합니다.
노트: Runtime에 액세스하기 위한 암호를 설정하지 않은 경우 모든 사용자가 Runtime에 액세스하여
홈
페이지로 직접 이동할 수 있습니다.
  1. sudo FactoryTalkRemoteAccessRuntimeCli --setRuntimePassword --password <runtime password>
    를 입력합니다.
  2. <runtime password>
    를 암호로 바꿉니다.
    노트:
    사이버 보안 위험을 줄이려면 강력한 암호를 생성하십시오.
    암호는 다음 요구 사항을 충족해야 합니다.
    • 8자 이상이어야 합니다.
    • 다음 요구 사항 중 세 가지 이상을 포함해야 합니다.
      • 영문 대문자 하나 이상
      • 영문 소문자 하나 이상
      • 숫자 하나 이상
      • 기호 문자 하나 이상
    8자보다 긴 암호 구문을 사용하여 암호 강도를 높이십시오. 강력한 암호는 암호를 추측하는 데 걸리는 시간을 늘려줍니다.
노트: 암호를 변경하려면 프로세스를 반복하십시오.

Runtime 업데이트

Ubuntu 22 Runtime 업데이트 항목을 참조하십시오.
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal