またWinSCPとも互換性あり。さらにOpenSSH + WinSCPと違い$HOMEにchrootすることも可能。
俺が望んでいた「(UNIX知識の期待できない)社外と安全にデーターをやりとりする方法」の最適解ではないか。
しかし/usr/ports/shells/scponlyはver3.4と古い。MakefileのPORTVERSIONを3.7にしてdistinfoを更新すればいい。 /usr/ports/shells/scponly/Makefile
9c9
< PORTVERSION= 3.4
---
> PORTVERSION= 3.7
16a17,20
> .if defined(WITH_RSYNC)
> RUN_DEPENDS= rsync:${PORTSDIR}/net/rsync
> .endif
>
19a24,43
>
> .if defined(WITH_CHROOT)
> CONFIGURE_ARGS+= --enable-chrooted-binary
> #INSTALL_TARGET= jail
> .endif
>
> .if defined(WITH_RSYNC)
> CONFIGURE_ARGS+= --enable-rsync-compat
> .endif
>
> pre-everything::
> @${ECHO} ""
> @${ECHO} "You can define the following variables to configure the scponly build:"
> .if !defined(WITH_CHROOT)
> @${ECHO} "- WITH_CHROOT - install chrooted binary 'scponlyc'"
> .endif
> .if !defined(WITH_RSYNC)
> @${ECHO} "- WITH_RSYNC - enable rsync compatibility"
> .endif
> @${ECHO} ""
distinfo
1c1 < MD5 (scponly-3.4.tgz) = c450ede9777f75483f7ab49a5ba446e1 --- > MD5 (scponly-3.7.tgz) = 6873df71eb44f91412f72158cc2b844emake -DWITH_RSYNC -DWITH_CHROOT でコンパイルしたあと、cd work/scponly-3.7/ ; make jailでchrootミニツリーが作れる。
scponlyで試したら簡単にscp,rsync,sftpしか使えないshellが実現できた。
ほんのちょっと前にportsがアップデートされてたよ_:
なんちゅう間の悪さ。上のdiffはステ。
/usr/local/etc/pkgtools.confのMAKE_ARGSに
Problem Report ports/48492_ のsetup_chroot.sh patchは入っていないので、お好みで。
/usr/local/etc/pkgtools.confのMAKE_ARGSに
'shells/scponly' => '-DWITH_SCPONLY_RSYNC -DWITH_SCPONLY_WINSCP',を追加してportinstall shells/scponlyで。
Problem Report ports/48492_ のsetup_chroot.sh patchは入っていないので、お好みで。



[ コメントする ]