두 호스트 사이에 터널을 설정해야 합니다.
이를 위해 나는 ssh
다음과 같은 방법을 사용합니다.
ssh -L MY_LOCAL_PORT:FOREIGN_ADDRESS:FOREIGN_PORT MYUSER@SSH_SERVER
그런 다음 SSH_SERVER에 로그인합니다.
이 기능을 방지하려면 어떻게 해야 합니까? ! 터널만 건설하면 됩니다. SSH_SERVER에 로그인할 필요가 없습니다...
-N 옵션을 시도했지만 이로 인해 쉘이 매우 바빠졌습니다.
답변1
다른 게시물에서 언급했듯이 원격 호스트에 메시지가 표시되지 않도록 하려면 -N
SSH 옵션을 사용해야 합니다. 그러나 이렇게 하면 SSH가 자동으로 실행되고 쉘이 사용 중입니다.
SSH를 백그라운드 작업으로 사용하고 다음 &
기호를 사용할 수 있습니다.
ssh -N -L 8080:ww.xx.yy.zz:80 user@server &
그러면 백그라운드에서 SSH 터널이 시작됩니다. 그러나 특히 비수신 포트에 연결하려고 할 때(서버 아파치가 시작되지 않은 경우) 일부 메시지가 나타날 수 있습니다. 다른 작업을 수행할 때 셸에서 이러한 메시지가 생성되지 않도록 하려면 STDOUT/STDERR을 큰 공백으로 리디렉션할 수 있습니다.
ssh -N -L 8080:ww.xx.yy.zz:80 user@server >/dev/null 2>&1 &
SSH를 즐겨보세요.
답변2
-f -N
당신이 찾고있는 것입니다 :
ssh -f -N -L MY_LOCAL_PORT:FOREIGN_ADDRESS:FOREIGN_PORT MYUSER@SSH_SERVER
~에서ssh
매뉴얼 페이지:
-에프명령이 실행되기 전에 SSH에 백그라운드로 들어가도록 요청합니다. 이는 ssh에 비밀번호나 패스프레이즈가 필요하지만 사용자가 이를 백그라운드에서 실행하기를 원하는 경우에 유용합니다. 이것은 의미한다-N.
-N원격 명령을 실행하지 마십시오. 이는 포트만 전달하는 데 유용합니다(프로토콜 버전 2만 해당).
-N표준 입력을 리디렉션합니다
/dev/null
(실제로 표준 입력에서 읽는 것을 방지합니다).ssh
이 기능은 백그라운드에서 실행할 때 사용해야 합니다.
답변3
이것은 SSH를 사용하여 원격 컴퓨터에서 고정 IP 주소가 없는 컴퓨터로 연결한 경험입니다. 고정 IP가 없는 서버에서 프로젝트를 관리하기 위해 필요합니다(LAN에서 서비스 제공).
설정 및 데모 요구 사항:
- Linux에서 고정 IP를 사용하는 SSH 서버(boss.com이라고 함)
- Linux에는 SSH/웹 서버에 대한 고정 IP가 없습니다. (목표라고 부르세요)
- JuiceSSH를 사용하는 Linux/Android 휴대폰
다음 사항이 있는지 확인하세요 /etc/ssh/sshd_config
.GatewayPorts yes
boss.com:1008을 대상의 URL로 사용하려면 대상 머신에서 다음 명령을 실행하십시오.
ssh -R 1008:127.0.0.1:80 [email protected]
이제 모든 장치에서 대상 웹 서버를 boot.com:1008로 설정할 수 있습니다(모바일 장치에서 브라우저를 사용해 보십시오).
대상 컴퓨터에서 다음 명령을 실행하여 SSH(포트 2048)를 통해 대상 컴퓨터에 연결합니다.
ssh -R 1008:127.0.0.1:2048 [email protected]
이제 다음 명령을 사용하여 대상 머신을 초과할 수 있습니다.
ssh [email protected]:1008
또는 Android 휴대폰에서 JuiceSSH를 사용하여 테스트하세요.
서버에 액세스하기 위해 루트 비밀번호를 사용하는 것은 좋은 생각이 아닙니다.
Create user mytunnel in boss.com
replace root with mytunnel in above examples
마지막으로 mytunnel 사용자가 boss.com을 통해서만 터널링할 수 있도록 다음 작업을 수행합니다.
boss.com의 /etc/passwd에서 mytunnel 쉘을 /bin/bash에서 /bin/false로 교체합니다.
위 명령에 -f -N을 추가하세요.
ssh -f -N -R 1008:127.0.0.1:80 [email protected]
ssh -f -N -R 1008:127.0.0.1:2048 [email protected]
이제 사용자들은내 터널서버의 SSH 터널 기능만 사용할 수 있습니다.