영어프랑스어스페인어

Ad


온웍스 파비콘

websockify - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 공급자에서 websockify 실행

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 공급자에서 실행할 수 있는 websockify 명령입니다.

프로그램:

이름


websockify - WebSocket과 TCP 소켓 브리지

개요


websockify [옵션] [source_addr:]source_port target_addr:target_port
websockify [옵션] [source_addr:]source_port -- WRAP_COMMAND_LINE

옵션


-h, --help 이 도움말 메시지를 표시하고 종료
-v, --verbose 자세한 메시지 및 프레임당 트래픽
--record=FILE 세션을 FILE에 기록합니다.[session_number]
-D, --daemon은 데몬이 됩니다(백그라운드 프로세스)
--run-once 단일 WebSocket 연결을 처리하고 종료합니다.
--timeout=TIMEOUT 초 후 연결되지 않은 경우 종료됩니다.
--cert=CERT SSL 인증서 파일
--key=KEY SSL 키 파일(인증서와 별도인 경우)
--ssl-only는 암호화되지 않은 연결을 허용하지 않습니다.
--web=DIR은 동일한 포트에서 웹서버를 실행합니다. DIR에서 파일을 제공합니다.
--wrap-mode=래핑된 프로그램이 종료될 때 취할 모드 동작 또는
데몬화: 종료(기본값), 무시, 다시 생성

기술


가장 기본적인 수준에서 websockify는 WebSocket 트래픽을 일반 TCP로 변환합니다.
소켓 트래픽. Websockify는 WebSockets 핸드셰이크를 수락하고 이를 구문 분석한 다음 시작합니다.
클라이언트와 대상 간의 트래픽을 양방향으로 전달합니다.

websockify는 이전에 wsproxy로 명명되었으며 noVNC 프로젝트의 일부였습니다.

노트


WebSocket을 데이터
Websockify는 모든 버전의 WebSockets 프로토콜(Hixie 및 HyBI)을 지원합니다. 나이가 많은
Hixie 버전의 프로토콜은 UTF-8 텍스트 페이로드만 지원합니다. 운송하기 위해서는
UTF-8을 통한 이진 데이터는 UTF-8 내에서 데이터를 캡슐화하기 위해 인코딩을 사용해야 합니다.
Websockify는 base64를 사용하여 클라이언트와 주고받는 모든 트래픽을 인코딩합니다. 이는 영향을 미치지 않습니다
websockify와 서버 간의 데이터.

암호화 웹 소켓 연결 (wss://)
WebSocket 'wss://' URI 체계를 사용하여 트래픽을 암호화하려면
로드할 websockify용 인증서입니다. 기본적으로 websockify는 인증서 파일 이름을 로드합니다.
self.pem이지만 --cert=CERT 옵션은 파일 이름을 재정의할 수 있습니다. 당신은 자기를 생성할 수 있습니다
openssl을 사용하여 서명된 인증서. 일반 이름을 묻는 경우 해당 호스트 이름을 사용합니다.
프록시가 실행될 서버:

openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem

웹삭 자바 스크립트 도서관
websock.js(https://github.com/kanaka/websockify 참조) Javascript 라이브러리 라이브러리
표준 WebSocket 개체와 유사하지만 Websock 개체를 제공합니다.
websockify를 통해 원시 TCP 소켓(즉, 바이너리 스트림)과의 통신을 활성화합니다. 이것
Websock과 websockify 간의 데이터 스트림을 base64로 인코딩하여 수행됩니다.

Websock에는 수신 큐 버퍼링이 내장되어 있습니다. 메시지 이벤트에 실제 내용이 포함되어 있지 않습니다.
데이터이지만 단순히 새로운 데이터가 있다는 알림일 뿐입니다. 여러 rQ* 방법
수신 대기열에서 이진 데이터를 읽을 수 있습니다.

Websock API는 websock.js API 위키 페이지에 문서화되어 있습니다.

https://github.com/kanaka/websockify/wiki/websock.js

Websock 및 websockify를 다음과 같이 사용하는 예는 아래의 "프로그램 래핑" 섹션을 참조하세요.
브라우저 텔넷 클라이언트(wstelnet.html).

추가 웹소크파이 풍모
기본 작동에는 필요하지 않습니다.

* 데몬화: -D 옵션을 지정하면 websockify가 백그라운드에서 다음과 같이 실행됩니다.
데몬 프로세스.

* SSL(wss:// WebSockets URI): 이는 websockify에 의해 자동으로 감지됩니다.
클라이언트에서 보낸 첫 번째 바이트를 스니핑한 다음 소켓을 래핑합니다.
데이터는 '\x16' 또는 '\x80'(SSL을 나타냄)으로 시작합니다.

* 플래시 보안 정책: websockify는 플래시 보안 정책 요청을 감지합니다(다시
첫 번째 패킷을 스니핑)하고 적절한 플래시 보안 정책으로 응답합니다.
응답합니다(그런 다음 포트를 닫습니다). 이는 별도의 플래시 보안 정책이 없음을 의미합니다.
플래시 WebSocket 대체 에뮬레이터를 지원하려면 서버가 필요합니다.

* 세션 녹화: 전송된 트래픽을 녹화하고
--record 옵션을 사용하여 클라이언트에서 파일로 수신됩니다.

* 미니 웹서버: websockify는 일반 웹 요청을 감지하고 응답할 수 있습니다.
WebSockets 프록시 및 플래시 보안 정책과 동일한 포트입니다. 이 기능은
--web DIR 옵션으로 활성화합니다. 여기서 DIR은 웹 디렉터리의 루트입니다.
서브.

* 프로그램 래핑: 아래의 "프로그램 래핑" 섹션을 참조하세요.

포장을 a 프로그램
소스 주소에서 대상 주소로 프록시하는 것 외에도
다른 시스템), websockify에는 로컬 시스템에서 프로그램을 시작할 수 있는 기능이 있으며
프로그램이 소유/바인딩한 일반 TCP 포트에 대한 프록시 WebSocket 트래픽입니다.

이는 바인딩()을 가로채는 작은 LD_PRELOAD 라이브러리(rebind.so)를 사용하여 수행됩니다.
프로그램에 의한 시스템 호출. 지정된 포트가 새 로컬 호스트/루프백으로 무료로 이동됩니다.
높은 항구. 그런 다음 websockify는 원래 포트로 전달되는 WebSocket 트래픽을 프록시로 프록시합니다.
프로그램의 새로운(이동된) 포트.

프로그램 랩 모드는 대상을 -- 다음에 프로그램으로 대체하여 호출됩니다.
래핑할 명령줄.

`./websockify 2023 -- 프로그램 ARGS`

--wrap-mode 옵션은 래핑된 경우 수행할 작업을 나타내는 데 사용할 수 있습니다.
프로그램이 종료되거나 데몬화됩니다.

다음은 websockify를 사용하여 vncserver 명령을 래핑하는 예입니다(배경은
자체) noVNC와 함께 사용:

`./websockify 5901 --wrap-mode=ignore -- vncserver -geometry 1024x768 :1`

다음은 telnetd(krb5-telnetd에서)를 래핑하는 예입니다.telnetd는
연결이 닫히므로 랩 모드가 명령을 다시 생성하도록 설정됩니다.

`sudo ./websockify 2023 --wrap-mode=respawn -- telnetd -debug 2023`

wstelnet.html 페이지는 간단한 WebSocket 기반 텔넷 클라이언트를 보여줍니다.

onworks.net 서비스를 사용하여 온라인으로 websockify를 사용하세요.


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

Linux 명령

Ad