SSH 내망 관통술

2278 단어
ngrok,localtunnel에게 귀신이 곡할 때까지 기다리라고 하세요!(ngrok가 사용하지 않는 이유,localtunnel-server가 자신의 서비스를 구축하고 도메인 이름 설정에 너무 많은 구덩이가 존재한다)!

프론트

  • 수요: 내망 서비스 인터페이스가 외망에 노출되어 호출(외망은 내망에 직접 접근할 수 없음)
  • 전제 사항: 외부 네트워크 VPS 1대
  • 사고방식: 외부 네트워크 VPS를 에이전트로 하고 외부 네트워크에서 이 VPS에 액세스하며 VPS 재전송 매핑 네트워크 주소
  • 기술: ssh, autossh, ssh-copy-id
  • 실현

  • 환경
  • 대상 A: 네트워킹 서버(개발 서버), 서버 포트 8080, 맵 포트 8088
  • 대상 B: 외부 네트워크 VPS, 서버 포트 8089, 매핑 로컬 포트 8088, 공공 네트워크 IP: 192.168.1.111(예를 들어 IP, 해당 주소로 바꾸면 됨)
  • 방문자 C: VPS 액세스 가능, A 액세스 불가
  • 목표 B, 서비스 시작(포트 전송, 구현 방식 SSH 프록시 또는 iptables 전송)
  • #  VPS   root  
    ➜  ~ ssh -fCNL *:8089:localhost:8088 localhost
    # or
    
  • 대상 A, 서비스 시작(원리 SSH 리버스 에이전트)
  • #192.168.1.111   VPS   IP, 
    ➜  ~ ssh -fCNR 8088:localhost:8080 [email protected]
    
  • 방문자 C, 방문http://192.168.1.111:8089, 액세스 완료
  • 고급

  • ssh 연결이 불안정하고 한동안 끊길 수 있는 문제는 autossh로 해결
  • #-M 6677  autossh  ,  ssh
    ➜  ~ autossh -M 6677 -fCNR 8088:localhost:8088 root@XXX
    
  • 구덩이를 만났죠. 많이 시도해 보세요. 저는 처음에 완일봉 블로그를 보고 SSH를 소개했을 때 전혀 성공할 수 없었어요.당신의 요구에 따라 출발하여 답을 찾으세요.구글이 너에게 손짓하고 있다.

  • 주의사항

  • VPS 방화벽(iptables 등), 8088, 8089 포트 개방
  • VPS Aliyun ECS의 경우 서버 보안 그룹 설정 주의
  • ssh 비밀번호 없이 로그인하기ssh-copy-id
  • Warning: remote port forwarding failed for listen port 8088kill vPS에서 제거sshd: root관련 프로세스를 다시 시도하십시오
  • 외부 네트워크 접근이 불러오지 않지만 실패한 경우도 있다.동상
  • macOS ssh 일정 시간 초과 끊기, 클라이언트 설정 편집~/.ssh/config 가입ServerAliveInterval 60
  • 참고

  • http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html
  • http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html
  • http://blog.csdn.net/bwlab/article/details/54970700
  • https://segmentfault.com/a/1190000002718360
  • http://www.cnblogs.com/kwongtai/p/6903420.html
  • https://bingozb.github.io/32.html
  • http://lvii.github.io/system/2013/10/08/ssh-remote-port-forwarding/
  • http://laoono.com/2014-03/resolved-under-mac-environment-ssh-timeout.html
  • https://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/
  • 좋은 웹페이지 즐겨찾기