
나는 때때로 SOCKS
인터넷을 탐색하기 위해 프록시로 사용하는 Ubuntu VPS를 가지고 있습니다. 다음과 같이 ssh 동적 포트 전달 명령을 사용합니다.
ssh -fNTC -D 1080 username@vpsIP
그런 다음 내 브라우저의 프록시 localhost:1080
를 SOCKS
.
사용자 이름이 ''인 추가 사용자를 만들었습니다.친구들몇 명의 친구가 SSH 포트 포워딩을 통해 VPN과 유사한 것을 얻을 수 있도록 VPS에서 '(VPN의 네트워크 부분은 필요하지 않습니다).
이제는 VPS를 VPN 서버로 실행하고 싶지 않으므로 SSH 포트 전달 또는 이와 유사한 기능을 사용하고 싶습니다.
어떻게 예방할 수 있나요?친구들사용자가 보안 셸을 열고 VPS에서 문제를 일으킬 수 없게 됩니까?
답변1
사용자 'dudes'의 쉘을 제거하는 것은 어떻습니까?
usermod -s /sbin/nologin dudes
또는 OS에 nologin이 없는 경우:
usermod -s /bin/false dudes
답변2
가능성은 거의 없습니다. 하지만 가장 쉬운 방법은 ForceCommand
아마도 sshd_config
. 어떤 명령도 실행할 수 없으며, 일부 명령을 실행하고 싶다면 이 명령을 실행합니다.
예제 스니펫 sshd_config
:
Match User dudes #your dudes user -- you can also match group
ForceCommand /bin/true
답변3
키 기반 인증을 사용하는 경우(강력히 권장함) 각 키가 파일을 통해 수행할 수 있는 작업을 제한할 수 있습니다 authorized_keys
.
command="/bin/false"
키 앞에 지정하면 해당 키가 사용자가 입력한 것 이외의 쉘이나 명령을 호출하는 것을 방지할 수 있습니다 authorized_keys
.
를 통해 부과할 수 있는 다른 제한 사항이 있습니다 authorized_keys
. 전체 목록을 보려면 sshd
매뉴얼 페이지를 참조하세요.