w
공용 FreeBSD 시스템에 연결되어 있고 연결된 위치를 공개하지 않고(등을 통해) 다른 서버에 연결할 수 있기를 원합니다. 어떻게 해야 합니까?
답변1
커널은 연결을 추적하며 이에 대해 사용자가 할 수 있는 일은 없습니다. 나도 잘 모르겠어뿌리특권이 당신을 돕기 위해 여기 있습니다(적어도 커널 모듈 마법 없이는 아닙니다).
숨기고 싶다면어디당신은 떠나려고 합니다. 가장 좋은 일은 떠나는 척하는 것일 수도 있습니다.다른 곳대신에. 즉, 프록시를 사용하거나 가능한 모든 것을 사용하십시오.안전하게SSH 연결을 릴레이합니다.
큰강조하다안전하게여기. 종단 간 암호화를 유지하고 제3자가 SSH 터널을 열도록 허용하지 마십시오.
예를 들어 다음을 사용할 수 있습니다.torsocks
이를 통해 ToR을 통해 TCP 흐름을 중계할 수 있습니다. 노출 보다는 이렇게 lsof
...
$ ssh remotehost
$ lsof SSH_PID # in another terminal
ssh SSH_PID you TCP localhost:xx->remotehost:ssh (ESTABLISHED)
당신은 얻을 것이다 ...
$ torsocks ssh remotehost
$ lsof SSH_PID # in another terminal
ssh SSH_PID you TCP localhost:yy->localhost:9050 (ESTABLISHED)
여기서 차이점은 ssh
원격 호스트에 직접 연결하지 않고 로컬 ToR SOCKS 서버에 연결한다는 것입니다. ToR의 좋은 점은 로컬 ToR 프로세스에서도 목적지를 공개하지 않는다는 것입니다.
$ lsof TOR_PID
tor TOR_PID tor TCP localhost:zz->tornode:https (ESTABLISHED)
여기서 또 다른 장점은 소스에서 대상을 숨길 수 있을 뿐만 아니라 대상에서 소스를 숨길 수도 있다는 것입니다. 연결하려는 원격 호스트는 ToR 네트워크에서 오는 연결을 볼 수 있습니다. 물론 이제 다른 시스템 관리자가 누구인지에 따라 이 작은 트릭이 오래 가지 못할 수도 있습니다.
약간의 조정을 통해 사용자 공간 권한과 유사한 것을 설치하는 것이 가능할 수도 있습니다. 아마도 홈 디렉토리에서 무언가를 컴파일하고 시작할 수 있습니다. 그렇지 않은 경우에는 중계할 다른 항목을 선택해야 할 수도 있습니다. 한 가지 가능성은 원격 시스템을 "희생"하여 다른 시스템의 릴레이 역할을 하는 것입니다. 항상 ssh
해당 시스템을 먼저 사용한 다음 다른 시스템에 연결합니다.
답변2
w
인쇄는 터미널이 제어하는 프로세스의 프로세스 명령줄이므로 명령줄에 입력한 내용만 표시됩니다 . 따라서 호스트 이름만 변경하면 됩니다.
.ssh/config
Giles의 의견을 바탕으로 다음과 같이 설정할 수 있습니다 .
Host bogusname
HostName real-address.org
Port 2222
# <other options>
명령줄에서 다음을 통해 연결할 수 있습니다.
ssh bogusname
구성 파일을 읽기 전용으로 만들어 반비밀로 유지할 수 있습니다.
netstat -nap
그러나 이것이 누군가가 답을 결정하기 위해 또는 이와 유사한 것을 사용하는 것을 막지는 못합니다 . 하지만 적어도 무해해 보여서 사용하는 사람이 w
의심할 일은 없을 것입니다.