• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

build_extras/H07-May-2022-738529

AUTHORH A D07-Mar-200332 21

CHANGELOGH A D20-Nov-201011.5 KiB350265

CONTRIBH A D20-Nov-20103.7 KiB13495

COPYINGH A D14-Nov-20031.2 KiB2319

INSTALLH A D20-Dec-20056.2 KiB177122

Makefile.inH A D03-May-20221.8 KiB7154

READMEH A D22-Dec-20054 KiB10378

SECURITYH A D11-Jul-20093.1 KiB7151

TODOH A D20-Nov-2008174 63

aclocal.m4H A D07-Mar-2003425 118

config.guessH A D22-Mar-200437.2 KiB1,2991,123

config.h.inH A D20-Nov-20101.6 KiB9380

config.subH A D22-Mar-200427.2 KiB1,3761,236

configureH A D27-May-2011204.2 KiB7,1235,956

configure.inH A D20-Nov-201011.9 KiB322284

groups.cH A D10-Aug-2007162 116

helper.cH A D03-May-202213.8 KiB631495

install-shH A D07-Mar-20035.5 KiB252153

netbsd_getopt_long.cH A D20-Nov-201010.6 KiB410264

scponly.8H A D13-Jul-20075 KiB140139

scponly.8.alternate_manpageH A D13-Jul-20074.8 KiB128120

scponly.cH A D27-May-201120.8 KiB899675

scponly.hH A D20-Nov-20101.9 KiB6754

scponly_getopt.hH A D08-Sep-2010455 2217

setup_chroot.sh.inH A D30-Jan-20067.4 KiB275176

tagsH A D08-Sep-20109.3 KiB168167

README

1
23debe8e4f1c654a658b48dfdc5c2cf9d
3http://sublimation.org/scponly
4
5"scponly" is an alternative 'shell' (of sorts) for system
6administrators who would like to provide access to remote users to
7both read and write local files without providing any remote
8execution privileges.  Functionally, it is best described as a
9wrapper to the mostly trusted suite of ssh applications.
10
11A typical usage of scponly is in creating a semi-public account not
12unlike the concept of anonymous login for ftp.  This allows an
13administrator to share files in the same way an anon ftp setup
14would, only employing all the protection that ssh provides.  This is
15especially significant if you consider that ftp authentications
16traverse public networks in a plaintext format.
17
18Instead of just a single anon user, scponly supports configuring
19potentially many users, each of which could be set up to provide
20access to distinct directory trees.  Aside from the installation details
21(see INSTALL), each of these users would have their default shell in
22/etc/passwd set to "/usr/local/sbin/scponly" (or wherever you choose
23to install it).  This would mean users with this shell can neither
24login interactively nor execute commands remotely.  They can however,
25scp files in and out, governed by the usual unix file permissions.
26
27Some Features:
28==============
29
30- logging:  scponly logs time, client IP address, username, and the
31actual request to syslog.
32
33- choot: scponly can chroot to the user's home directory (or any
34other directory the user has permissions for), disallowing access
35to the rest of the filesystem.
36
37- sftp compatibility.  my testing of sftp against an scponly user
38worked great.  this is probably the cleanest and most usable way
39for an scponly user to access files.
40
41- sftp logging: if the ./configure directive
42"--enable-sftp-logging-compat" is used, scponly will support sftp
43logging
44
45- WinSCP 2.0/3.0 compatibility.
46
47- gftp compatibility
48
49- rsync compatibility
50
51- security checks: root login is disallowed (though root
52should never be configured to be using scponly as the default shell.)
53scponly also checks the ownership of directories before chroot-ing
54into them.
55
56How it works:
57=============
58If you were to examine the arguments passed to a shell by sshd upon
59opening a remote connection, the structure of the argument vector
60invariably looks like this:
61
62<shell name> -c <remote command>
63
64scponly validates remote requests by examining the third argument.
65scponly also verifies the request by disallowing what a normal
66shell would interpret as "special characters".  This prevents
67someone from piggybacking additional commands onto a valid scp
68request.  It may seem that using scponly would prevent using scp to
69copy files that really do contain special characters.  However,
70copying files with special characters in their names can be
71accomplished by using wildcards (which are allowable characters) to
72match the filenames.
73
74scponly doesnt do anything to manage read/write permissions.  The
75ssh applications already do that just fine.  If you use scponly, be
76aware that good old unix file permissions are still doing the work
77of protecting your files.
78
79
80MAY 2002 ADDENDUM:
81	I've since discovered that ssh.com's commercial ssh offering
82supports BOTH "dummy users" as well as scponly-ish functionality.  I
83have not been able to find any notes on these features, but I did read
84that they exist.  I will make a point to include more information later.
85It appears that OpenSSH does not yet support these features.  At this time,
86I have no plans to end-of-life scponly, though ultimately, I recognize
87that scponly should eventually become just a feature of whichever sshd
88you may run.
89
90NOV 2003 ADDENDUM:
91	OpenSSH still doesnt support configurable chrooting for users OR
92disallowing interactive login.
93
94NOV 2004 ADDENDUM:
95	OpenSSH still doesnt support configurable chrooting for users OR
96disallowing interactive login.
97
98DEC 2005 ADDENDUM:
99	OpenSSH still doesnt support configurable chrooting for users OR
100disallowing interactive login.
101
102
103