Microsoft Tunnel Gateway에 대한 참조
Microsoft Tunnel Gateway에 대한 이 참조의 정보는 사용자 환경에서 터널 설치의 설치 및 유지 관리를 지원하기 위해 제공됩니다.
Microsoft Tunnel Gateway용 mst-cli 명령줄 도구
Mst-cli 는 Microsoft Tunnel Gateway와 함께 사용할 수 있는 명령줄 도구입니다. 이 도구는 터널 설치가 완료된 후 Linux 서버에서 사용할 수 있으며 /usr/sbin/mst-cli에서 찾을 수 있습니다. 이 도구를 사용하여 완료할 수 있는 몇 가지 작업은 다음과 같습니다.
- 터널 서버에 대한 정보를 가져옵니다.
- 터널 서버의 구성을 설정하거나 업데이트합니다.
- 터널 서버를 다시 시작합니다.
- 터널 서버를 제거합니다.
다음은 도구의 일반적인 명령줄 사용입니다.
명령줄 인터페이스:
mst-cli –help
- 사용법: mst-cli [command]명령:
-
agent
- 에이전트 구성 요소에서 작동합니다. -
server
- 서버 구성 요소에서 작동합니다. -
uninstall
- Microsoft Tunnel을 제거합니다. -
eula
- EULA를 표시합니다. -
import_cert
- TLS 인증서를 가져오거나 업데이트합니다.
-
mst-cli agent –help
- 사용량: mst-cli 에이전트 [명령]명령:
-
logs
- 에이전트 로그를 표시합니다(자세한 내용은 -h). -
status
- 에이전트 상태 표시합니다. -
start
- 에이전트 서비스를 시작합니다. -
stop
- 에이전트 서비스를 중지합니다. -
restart
- 에이전트 서비스를 다시 시작합니다.
-
mst-cli agent logs help
- 사용량: mst-cli 에이전트 로그 [flags]플래그:
-
-f, --follow
- 로그 출력을 따릅니다. 기본값은 false입니다. -
--since string
- TIMESTAMP 이후의 로그를 표시합니다. -
--tail uint
- 로그 끝에 지정된 줄 수를 출력합니다. 기본값은 0으로, 모든 줄을 인쇄합니다. -
-t, --timestamps
- 로그에 타임스탬프를 출력합니다.
-
mst-cli agent status
- 다음 반환은 표시되는 결과의 예입니다.- 상태: 실행 중
- 상태: 정상
mst-cli agent start
- 에이전트가 중지된 경우 에이전트를 시작합니다.mst-cli agent stop
- 에이전트를 중지합니다. 중지한 후 수동으로 시작해야 합니다.mst-cli agent restart
- 에이전트를 다시 시작합니다.mst-cli server --help
- 사용량: mst-cli 서버 [명령]명령:
-
logs
- 서버 로그를 표시합니다. 자세한 내용은 -h를 사용합니다. -
status
- 서버 상태 표시합니다. -
start
- 서버 서비스를 시작합니다. -
stop
- 서버 서비스를 중지합니다. -
restart
- 서버 서비스를 다시 시작합니다. -
show
- 다양한 서버 통계를 표시합니다. 자세한 내용은 -h 를 사용합니다.
-
mst-cli server logs –help
- 사용량: mst-cli 서버 로그 [flags]플래그:
-
-f, --follow
- 로그 출력을 따릅니다. 기본값은 false입니다. -
--since string
- TIMESTAMP 이후 로그 표시 -
--tail uint
- 로그 끝에 지정된 줄 수를 출력합니다. 기본값은 0으로, 모든 줄을 인쇄합니다. -
-t, --timestamps
- 로그에 타임스탬프를 출력합니다.
-
mst-cli server status
- 다음 반환은 표시되는 결과의 예입니다.- 상태: 실행 중
- 상태: 정상
mst-cli server start
- 중지된 경우 서버를 시작합니다.mst-cli server stop
- 서버를 중지합니다. 중지한 후 수동으로 시작해야 합니다.mst-cli server restart
- 서버를 다시 시작합니다.mst-cli server show
-
show status
- 서버의 상태 및 통계를 인쇄합니다. -
show users
- 연결된 사용자를 인쇄합니다. -
show ip bans
- 금지된 IP 주소를 인쇄합니다. -
show ip ban points
- 점이 있는 알려진 모든 IP 주소를 인쇄합니다. -
show iroutes
- 서버 사용자가 제공하는 경로를 인쇄합니다. -
show sessions all
- 모든 세션 ID를 인쇄합니다. -
show sessions valid
- 다시 연결 세션에 유효한 모든 를 인쇄합니다. -
show session [SID]
- 지정된 세션에 대한 정보를 출력합니다. -
show user [NAME]
- 지정된 사용자에 대한 정보를 출력합니다. -
show id [ID]
- 지정된 ID에 대한 정보를 출력합니다. -
show events
- 사용자 연결에 대한 정보를 제공합니다. -
show cookies all
- 세션 모두 표시에 대한 별칭입니다. -
show cookies valid
- 유효한 세션 표시의 별칭입니다.
-
환경 변수
다음은 Linux 서버에 Microsoft Tunnel Gateway 소프트웨어를 설치할 때 구성할 수 있는 환경 변수입니다. 이러한 변수는 환경 파일 /etc/mstunnel/env.sh 있습니다.
- http_proxy=[address] - 프록시 서버의 HTTP 주소입니다.
- https_proxy=[address] - 프록시 서버의 HTTP 주소입니다.
데이터 경로
경로/파일 | 설명 | 사용 권한 |
---|---|---|
/.../mstunnel | 모든 구성에 대한 루트 디렉터리입니다. | 소유자 루트, 그룹 mstunnel |
/.../mstunnel/admin-settings.json | 서버 설치에 대한 설정을 포함합니다. | Intune 이 파일을 관리하며 수동으로 편집하면 안 됩니다. |
/.../mstunnel/certs | TLS 인증서가 저장되는 디렉터리입니다. | 소유자 루트, 그룹 mstunnel |
/.../mstunnel/private | Intune 에이전트 인증서 및 TLS 프라이빗 키가 저장되는 디렉터리입니다. | 소유자 루트, 그룹 mstunnel |
서버 설치 중에 추가된 파일
/etc/mstunnel:
admin-settings.json:
- Intune 직렬화된 서버 구성을 포함합니다.
- 서버가 등록된 후에 생성됩니다.
agent-info.json:
- 등록이 완료되면 생성됩니다.
- AgentId, IntuneTenantId, AADTenantId 및 에이전트 인증서 RenewalDate.
- 에이전트 인증서 갱신에서 업데이트되었습니다.
private/agent.p12:
- 에이전트 인증에 사용되는 PFX 인증서는 Intune.
- 자동으로 갱신됩니다.
version-info.json:
- 다양한 구성 요소에 대한 버전 정보를 포함합니다.
- ConfigVersion, DockerVersion, AgentImageHash, AgentCreateDate, ServerImageHash, ServerCreateDate.
ocserv.conf:
- 서버 구성
Images_configured
컨테이너를 만드는 데 사용되는 Docker 이미지:
- agentImageDigest
- serverImageDigest
admin-settings.json 예
{
"PolicyName": "Auto Generated Policy for rh7vm",
"DisplayName": "rh7vm Policy",
"Description": "This policy was auto generated for rh7vm",
"Network": "169.100.0.0/16",
"DNSServers": ["168.63.129.16"],
"DefaultDomainSuffix": "nmqjwlanybmubp4imht0k2b4qd.xx.internal.cloudapp.net",
"RoutesInclude": ["default"],
"RoutesExclude": [],
"ListenPort": 443
}
관리 설정 | 설명 |
---|---|
PolicyName | 설정 정책의 이름입니다. 이름을 선택할 수 있습니다. |
DisplayName | 짧은 표시 이름입니다. 이름을 선택할 수 있습니다. |
설명 | 정책에 대한 설명입니다. 설명을 선택할 수 있습니다. |
네트워크 | 클라이언트 가상 주소를 할당하는 데 사용되는 네트워크 및 마스크입니다. 충돌이 없으면 변경할 필요가 없습니다. 이 설정은 최대 64,000개의 클라이언트를 지원합니다. |
DNSServers | 클라이언트에서 사용해야 하는 DNS 서버 목록입니다. 이러한 서버는 내부 리소스의 주소를 resolve 수 있습니다. |
DefaultDomainSuffix | 리소스를 resolve 때 클라이언트가 호스트 이름에 추가하는 도메인 접미사입니다. |
RoutesInclude | VPN을 통해 라우팅되는 경로 목록입니다. 기본값은 모든 경로입니다. |
RoutesExclude | VPN을 바이패스해야 하는 경로 목록입니다. |
ListenPort | VPN 서버가 트래픽을 수신하는 포트입니다. |
Docker 명령
다음은 터널 서버에서 문제를 조사해야 하는 경우 사용할 수 있는 Docker에 대한 일반적인 명령입니다.
참고
대부분의 Linux 배포판은 Docker를 사용합니다. 그러나 RHEL(Red Hat Enterprise Linux) 8.4 와 같은 일부는 Docker를 지원하지 않습니다. 대신 이러한 배포에서는 Podman을 사용합니다. 지원되는 배포판 및 각 배포의 Docker 또는 Podman 요구 사항에 대한 자세한 내용은 Linxu 서버를 참조하세요.
Docker용으로 작성된 참조 및 명령줄은 docker를 Podman 으로 대체 하여 Podman과 함께 사용할 수 있습니다.
명령줄 인터페이스:
docker ps –a
– 모든 컨테이너를 참조하세요.- mstunnel-server – 이 컨테이너는 ocserv 서버 구성 요소를 실행하고 인바운드 포트 443 (기본값) 또는 사용자 지정 포트 구성을 사용합니다.
- mstunnel-agent - 이 컨테이너는 Intune 커넥터를 실행하고 아웃바운드 포트 443을 사용합니다.
Docker를 다시 시작하려면 다음을 수행합니다.
systemctl restart docker
컨테이너에서 무언가를 실행하려면 다음을 수행합니다.
docker exec –it mstunnel-server bash
docker exec –it mstunnel-agent bash
Podman 명령
다음은 터널 서버에서 문제를 조사해야 하는 경우 사용할 수 있는 Podman에 대한 명령입니다. Podman에서 사용할 수 있는 더 많은 명령은 Docker 명령을 참조하세요.
-
sudo podman images
- 실행 중인 모든 컨테이너를 나열합니다. -
sudo podman stats
- 컨테이너 CPU 사용률, MEM 사용량, 네트워크 및 블록 IO를 표시합니다. -
sudo podman port mstunnel-server
- tunnel-server에서 로컬 Linux 호스트로의 포트 매핑을 나열합니다.
Linux 명령
다음은 터널 서버에서 사용할 수 있는 일반적인 Linux 명령입니다.
sudo su
– 상자에 루트를 만듭니다. 다음 명령을 실행하기 전과 mstunnel-setup을 실행하기 전에 이 명령을 사용합니다.ls
– 디렉터리의 내용을 나열합니다.ls – l
– 타임스탬프를 포함한 디렉터리의 콘텐츠를 나열합니다.cd
– 다른 디렉터리로 변경합니다. 예를 들어cd /etc/test/stuff
루트 디렉터리에서 기타 하위 폴더에서 테스트 하위 폴더 >> 로 변경한 다음, stuff 폴더로 변경합니다.cp <source> <destination>
- 인증서를 올바른 위치에 복사하는 데 유용합니다.ln –s <source> <target>
- 소프트링크를 만듭니다.curl <URL>
– 웹 사이트에 대한 액세스를 확인합니다. 예:curl https://microsoft.com
./<filename>
- 스크립트를 실행합니다.
수동으로 ip_tables 로드
다음 명령을 사용하여 Linux 서버 커널에서 ip_tables 필요한 경우 검사 수동으로 로드합니다. sudo 컨텍스트를 사용합니다.
서버에 ip_tables(
lsmod |grep ip_tables
)가 있는지 확인합니다.서버가 부팅될 때 ip_tables 커널로 로드하는 구성 파일을 만듭니다.
echo ip_tables > /etc/modules-load.d/mstunnel_iptables.conf
커널에 ip_tables 즉시 로드하려면 다음을 수행합니다.
/sbin/modprobe ip_tables