안녕하세요.
구글, Askubuntu, 티스토리, ChatGPT등을 검색하다 도저히 해결이 안되면
지푸라기 라도 잡는 심정으로 클리앙에 여쭤보는 리눅스 초보입니다.
연구실에 있는 우분투 컴퓨터에 원격접속이 필요하여, Guacamole를 Docker를 이용하여 설치하였습니다. Nginx도 같이 설치하였습니다.

M1 Macbook으로 접속하기 위해서 테스트 결과 Home 화면 접속은 되는 걸로 보니, Guacamole는 정상 설치 된 것으로 보입니다.

프로토콜은 RDP로 설정하였습니다. VNC는 느려서 RDP로 하고자 합니다. 그런데, 접속이 안되서 아래와 같은 시도를 해보았는데 답이 안나오네요.
1. RDP로 접속하면, Black Screen또는 여러시도를 바꿔가면서 해보면 아래와 같이 뜹니다. (포트 8443, 443 둘다 안되네요)

2. VNC 프로토콜로 하니 아래와 같이 정지 상태 입니다.

3. XRDP와 gnome-session을 깔면 아래와 같은 화면이 떠버립니다.

4. SSH프로토콜도 아래와 같네요. (포트 22)

그런데, 맥에서 터미널로 ssh 접속을 하면 정상접속이 됩니다.

아래는 우분투 포트의 상태입니다.

우분투 세팅에 보면 Sharing이라는게 있던데, 이걸 켜도 크게 달라지는 건 없네요. (이 메뉴는 무엇인지 잘 모르겠습니다)

Git에서 구해서 제가 설치한 docker-compose.yml 파일은 아래와 같습니다.
| version: '2.0' |
| # networks |
| # create a network 'guacnetwork_compose' in mode 'bridged' |
| networks: |
| guacnetwork_compose: |
| driver: bridge |
| # services |
| services: |
| # guacd |
| guacd: |
| container_name: guacd_compose |
| image: guacamole/guacd |
| networks: |
| guacnetwork_compose: |
| restart: always |
| volumes: |
| - ./drive:/drive:rw |
| - ./record:/record:rw |
| # postgres |
| postgres: |
| container_name: postgres_guacamole_compose |
| environment: |
| PGDATA: /var/lib/postgresql/data/guacamole |
| POSTGRES_DB: guacamole_db |
| POSTGRES_PASSWORD: 'ChooseYourOwnPasswordHere1234' |
| POSTGRES_USER: guacamole_user |
| image: postgres:15.2-alpine |
| networks: |
| guacnetwork_compose: |
| restart: always |
| volumes: |
| - ./init:/docker-entrypoint-initdb.d:z |
| - ./data:/var/lib/postgresql/data:Z |
| # guacamole |
| guacamole: |
| container_name: guacamole_compose |
| depends_on: |
| - guacd |
| - postgres |
| environment: |
| GUACD_HOSTNAME: guacd |
| POSTGRES_DATABASE: guacamole_db |
| POSTGRES_HOSTNAME: postgres |
| POSTGRES_PASSWORD: 'ChooseYourOwnPasswordHere1234' |
| POSTGRES_USER: guacamole_user |
| image: guacamole/guacamole |
| links: |
| - guacd |
| networks: |
| guacnetwork_compose: |
| ports: |
| ## enable next line if not using nginx |
| ## - 8080:8080/tcp # Guacamole is on :8080/guacamole, not /. |
| ## enable next line when using nginx |
| - 8080/tcp |
| restart: always |
| ########### optional ############## |
| # nginx |
| nginx: |
| container_name: nginx_guacamole_compose |
| restart: always |
| image: nginx |
| volumes: |
| - ./nginx/templates:/etc/nginx/templates:ro |
| - ./nginx/ssl/self.cert:/etc/nginx/ssl/self.cert:ro |
| - ./nginx/ssl/self-ssl.key:/etc/nginx/ssl/self-ssl.key:ro |
| ports: |
| - 8443:443 |
| links: |
| - guacamole |
| networks: |
| guacnetwork_compose: |
| #################################################################################### |
무엇이 문제일까요?
구글링해보면 금방 찾으실수 있을것이구요, 속도향상을 위해서라면 직접 서버를 구동할 수도 있습니다. rustdesk server는 리눅스상에서 도커/리눅스용 바이너리로 실행할 수 있습니다. 연구실에 남는 서버에 서버 하나 돌려두시면 되지 않을까 싶네요. 참고로 NAS에 docker로 돌릴수도 있습니다.
rust desk는 호스트랑 클라이언트 버전이 일치해야 접속이되네요.
도커 컨테이너 내에서 127.0.0.1 ip는 호스트(우분투PC)가 아닌 도커 컨테이너 내부를 가르키게 됩니다.
guacd 컨테이너에서 설정하신 ip 주소로 우분투 PC로 연결이 되는지 확인이 필요할 것 같습니다.
평소 사용하시는 RDP나 ssh처럼 키보드로 직접 입력하듯이 한글이 입력되지 않고, 타이핑으로 음절 하나가 완성되어야 그제서야 입력 전송이 되어집니다.
원격 사용 중 한글 타이핑하실 일이 많으시다면 다른 솔루션 사용하는 것을 추천드립니다.
원격 사용중인 화면이 연구실에 있는 사람들에게 노출되어도 상관 없으시다면, 크롬 원격 데스크톱이 여러모로 사용하기 편리하더군요.
만일 이게 불편하시다면, 연구실 PC에 openvpn이나 wireguard 이용해 vpn 서버 구축 후, 직접 xrdp나 ssh 연결을 추천드립니다.
3389 와 22번 열려 있네요.
윈도우 머신에서.. MSTSC를 이용하여 3389를 접속해 보세요.
잘 되면 프로그램이 문제인 것이죠.
VNC는 기본 포트가 5800인가 5900으로 알고 있습니다.
MAC에서 SSH 접속이 된다고 하시니 Ubuntu의 문제는 아닐것 같고 추가적인 포트(VNC 포트) 확인과 해당 포트를 열어보고 테스트 해보시는게 좋을 것 같습니다.
말씀하신 XRDP는 xrdp-client이며, 리눅스 호스트에서도 rdp 프로토콜을 통해 접속이 가능하도록 하는 xrdp-server 도 존재합니다.
그놈42 부터였던가 자체적으로 RDP가 내장되어있어서 추가적인 xrdp설치 없이도 설정메뉴의 화면공유를 통해서 RDP연결이 가능하기는 합니다.
그러나 막상 해보면 서버 재부팅 후에 그놈에 로그인이 되어있어야 된다던지.. wayland 관련 문제라던지.. 어딘가 아직 완벽하지 않은 느낌이었습니다. 현재 설치하신 버전이 23.04인걸 보면 최근에는 개선되었을런지도 모르겠네요.
참고: https://linuxhint.com/enable-remote-desktop-ubuntu-access-windows/
rust desk는 속도도 느리고 안정성 문제로 탈락, 크롬 데스크탑은 세팅이 복잡해서 탈락, anydesk는 의존성 문제 발생, TeamViewer는 유료화 및 해킹문제 등이 있었는데 한방에 해결되네요. 감사합니다.