Arch Linux 사용자 계정을 최대한 잠그고 싶습니다. 이 계정에 필요한 유일한 기능은 클라이언트가 인터넷에 대한 터널을 생성할 수 있도록 하는 비터미널 SSH 세션을 허용하는 것입니다.
상황은 몇몇 친구들과 원격 연결을 공유하고 싶은 것입니다. 계정에 대한 SSH 키를 제공하고 필요에 따라 프로그램을 구성하겠습니다.
문제는 키 파일을 보호하는 능력에 대해 100% 확신하고 싶지 않다는 것입니다. 나는 가정적인 상태로 유지하면서 타협으로 인한 잠재적인 피해를 최소화하고 보안에 대해 더 많은 것을 배울 수 있는 기회를 갖고 싶습니다.
완전히 격리되거나 잠긴 계정을 얻을 수 있는 방법이 있나요? SSH 연결은 허용하지만 터미널 액세스는 거부할 수 있나요?
도움을 주시면 감사하겠습니다!
답변1
파일에 키를 추가할 때 authorized_keys
키가 수행할 수 있는 작업을 제한하는 여러 옵션이 있습니다. 이 경우 모든 명령 실행을 비활성화할 수 있습니다. 그냥 앞에 command=""
.
예를 들어:
command="" ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDc7nKsHpuC6W/U131p0yDh455sLE9pWmFxdK...
사용자가 연결을 원하면 -N
에 전달해야 합니다 ssh
. 이는 ssh
클라이언트에게 명령 실행을 시도하지 않고 연결을 열도록 지시합니다(또는 구성된 경우 터널링). 클라이언트가 하나도 없이 시작되면 -N
즉시 연결이 끊어집니다.
예를 들어:
ssh -N -D 8080 host.example.com