sftp 사용자 만 만들려면 어떻게합니까?


15

adduser도구 를 통해 사용자를 시스템에 추가했습니다 . 그런 다음에 /etc/passwd, 나는 변경 시도 /bin/bash/sbin/nologin하거나 /dev/null,하지만 둘 다 일이의.

대화 형 셸을 가져 오는 옵션이없는 사용자에게 사용하고 싶습니다 sftp. 방법이 있습니까?

나는 그것이 이전에 여기에서 요청되었다는 것을 알고 있지만 아무도 만족스러운 답변을하지 않은 것 같습니다.


"운이 없다"는 무슨 뜻입니까?
Paweł Brodacki

원격 scp / sftp가 작동하지 않았다는 것을 의미했습니다. 나는 Iain이 제안한 scponly shell을 사용하여 문제를 해결했다
Toni Rosa

답변:


9

쉘을 변경하기 위해 사용해야하는 명령은 chsh 입니다. nologin 쉘은 /sbin/nologin또는 /usr/sbin/nologin(당신이보고있는 것을 확인하십시오 /etc/shells)하지만 /bin/false더 나은 선택 일 것입니다.

chsh -s /bin/false user

원하는 것을 정확하게 수행하는 scponly 와 같은 것을 설정하는 것이 좋습니다.


답변 주셔서 감사합니다. 운이없이 / etc / shell 안에있는 쉘을 사용해 보았습니다 ... / bin / false는 "손실 된 연결"을 제공하고 / sbin / nologin은 "이 계정은 현재 사용할 수 없습니다"를 반환합니다. 나는 이것을 scponly 시도 할 것이다
Toni Rosa

scponly shell을 사용하여 해결했습니다! 건배
토니 로사

3
이 답변은 건초의 바늘입니다! /bin/false그리고 /bin/nologin실제로 사용할 수 있는지 확인하십시오 /etc/shells!
Afr

@Afri Fine, 그러나 ... 당신은 정말로 serverfault.com/questions/328395/… 를 읽고 싶을 것 입니다. 이것은 매우 금기입니다.
Reinderien 2019

@Afr은 넣지 마십시오 nologin에서 /etc/shells! serverfault.com/a/328424
RobAu

9

또한 OpenSSH 4.9 이상에서이를 수행 할 수 있어야하며, 보안을 강화하기 위해 사용자를 추가적으로 루트 할 수 있습니다.

당신의 /etc/ssh/sshd_config:

Match User user
ChrootDirectory /home/user
ForceCommand internal-sftp
AllowTcpForwarding no

그런 다음 다음을 실행하십시오.

chsh -s /bin/false user
chown root:root /home/user
mkdir /home/user/uploads
chown user /home/user/uploads

사용자는 / home / user / uploads에서만 쓸 수 있습니다.

https://debian-administration.org/article/590/OpenSSH_SFTP_chroot_with_ChrootDirectory


+1 조사하기 위해 이것을 목록에 넣었습니다.
user9517

1
나는 그것을 사용했고 잘 작동한다. 쉘로 chroot 환경에 로그인 할 수있는 옵션을 사용자에게 줄 수도 있지만, 그런 경우에는 최소한의 라이브러리와 다른 유틸리티를 예상대로 복사해야합니다. Jailkit ( olivier.sessink.nl/jailkit )이 유용합니다.
Eduardo Ivanec

감사합니다. ForceCommand가 힌트였습니다. chroot는 필요하지 않지만 서비스 계정으로 SFTP에 로그인하고 싶습니다.
AnrDaemon


1

-s /bin/false쉘을 비활성화하기 위해 사용자를 추가 할 수 있지만 실제로 설정해야 할 것은 chrooted sftp 계정입니다. 이것은 사용자를 자신의 디렉토리에 "감옥"하고 chroot 디렉토리 외부의 파일이나 디렉토리에 액세스하거나 수정할 수 없게합니다.


답변 주셔서 감사하지만 작동하지 않는 것 같습니다. 쉘 / bin / false를 사용하여 사용자를 시도 할 때마다 "연결이 끊어졌습니다".
Toni Rosa
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.