OpenVPN을 통한 SSH 세션은 몇 줄 후에 차단/잠금됩니다.

OpenVPN을 통한 SSH 세션은 몇 줄 후에 차단/잠금됩니다.

나는 데비안 6(ARM)을 실행하는 동일한 팬 없는 PC를 여러 대 가지고 있습니다. 대부분은 Comcast를 통해 연결되어 잘 작동합니다. 일부는 "WiMax" 모뎀에 연결되어 있으며 통신 문제가 있습니다.

구체적으로: 그 중 하나에 ssh를 사용하여 "ps -ax"와 같은 명령을 시도하면 약 3줄이 반환되고 세션이 잠깁니다. 가만히 놔두면 결국 "피어에 의해 세션이 닫혔습니다"라는 메시지로 종료됩니다.

내가 시도한 것:

  • ssh -vvv → 오류 메시지 없음
  • ssh <user@host> 'command'→ 때때로 명령의 전체 출력이 반환됩니다. 때로는 전혀 연결되지 않는 경우도 있습니다.

다른 것을 시도해 볼 만한 제안이 있으십니까?

나는 일부 명령을 성공적으로 실행할 수 있다는 것을 발견했습니다. 예를 들어 Enter를 12번 이상 누르면 트릭이 수행됩니다. cd ~그런 다음 lf그대로 작업하십시오 df -h. 여러 번 성공적으로 실행할 수 있지만 더 많은 출력(예:)을 가진 작업을 df시도하자마자 작동이 중단됩니다.ls /etc

OpenVPN을 사용하여 이 두 호스트 간에 통신하려는 시도에 차이점이 있습니까?

답변1

당신은 다음과 같은 증상이 있습니다최대 전송 단위문제: 일부 TCP 연결이 정지되고 특정 명령이나 URL에 대해 어느 정도 반복이 가능하지만 식별하기 쉬운 전체 패턴이 없습니다. 한 가지 분명한 증상은 출력이 많은 명령을 실행하지 않는 한 대화형 SSH 세션이 제대로 작동한다는 것입니다. 바라보다PPPoE를 통해 Linux에서 선택한 https 사이트에 액세스할 수 없습니다.설명을 위해.

OpenVPN에는 여러 MTU 관련 옵션이 있습니다. 매뉴얼에서 "mtu"를 검색하세요. 어떤 옵션을 변경해야 하는지 판단할 만큼 경험이 부족합니다. (Wimax 모뎀 구성에서 무언가를 변경할 수도 있습니다.) 변경할 가능성이 가장 높은 옵션은 mssfix문제가 해결될 때까지 값을 낮추는 것입니다. 기본값은 1450입니다. 1400 정도의 값을 사용하면 문제가 해결될 수 있습니다. openvpn --fragment 1200 -mssfix도움이 된다면 중단되기 시작할 때까지 값을 늘리 십시오 .

답변2

Giles의 대답은 절대적으로 정확하지만 또 다른 근본적인 이유가 있습니다.

OpenVPN 버전 2.3.0에는 대량의 데이터를 전송할 때 클라이언트 연결을 끊는 버그가 있습니다.https://community.openvpn.net/openvpn/ticket/263

이 문제는 TCP를 사용할 때만 발생합니다. UDP는 전혀 영향을 받지 않습니다.

답변3

우리도 같은 문제에 직면했는데 실제로는 MTU 문제였습니다. 그러나 우리에게 문제는 openVPN 구성이 아니라 tun0 인터페이스였습니다.

이 문제를 해결하는 방법: 먼저 전달된 최대 패킷 크기를 찾습니다.

ping <host> -s 1500 -M do

특정 값(우리의 경우 1350)이 발생할 때까지 값을 1500만큼 감소시킵니다.

올바른 값을 찾으면 tun0 인터페이스를 다음으로 변경하십시오.

sudo ip link set dev tun0 mtu 1350

세바스찬이 제안한대로여기. 그 후 VPN은 원활하게 작동했습니다.

관련 정보