Setup sftp user account and restric read/write access to one folderHow to setup a SFTP server with users chrooted in their home directories?ssh connections to Ubuntu are intermittentLimit SFTP user access to specified directoryCreate SFTP user to access specific folder only?packet_write_wait: Connection to <IPaddress> port 22: Broken pipe when using Match Group in sshd_configread and write logs in sftpTrying to setup a SFTP user with limited accessAccess sftp folderServer: After upgrade from 16.04 to 18.04 ssh and ftp refuses connectionsCreate an sftp user and ftp user who read and write for ftp user and only read sftp user. On Ubuntu
Why does liquid water form when we exhale on a mirror?
Conservation of Mass and Energy
NASA's RS-25 Engines shut down time
When stopping and starting a tile job, what to do with the extra thinset from previous row's cleanup?
What was the Kree's motivation in Captain Marvel?
What Happens when Passenger Refuses to Fly Boeing 737 Max?
If I receive an SOS signal, what is the proper response?
Was Luke Skywalker the leader of the Rebel forces on Hoth?
How to detect if C code (which needs 'extern C') is compiled in C++
When traveling to Europe from North America, do I need to purchase a different power strip?
What problems would a superhuman have whose skin is constantly hot?
How does one describe somebody who is bi-racial?
What's the "normal" opposite of flautando?
What are some noteworthy "mic-drop" moments in math?
Declaring and defining template, and specialising them
Word for a person who has no opinion about whether god exists
How strictly should I take "Candidates must be local"?
Does the nature of the Apocalypse in The Umbrella Academy change from the first to the last episode?
Does "Until when" sound natural for native speakers?
Should I take out a loan for a friend to invest on my behalf?
Are there historical instances of the capital of a colonising country being temporarily or permanently shifted to one of its colonies?
Single word request: Harming the benefactor
How many characters using PHB rules does it take to be able to have access to any PHB spell at the start of an adventuring day?
In the quantum hamiltonian, why does kinetic energy turn into an operator while potential doesn't?
Setup sftp user account and restric read/write access to one folder
How to setup a SFTP server with users chrooted in their home directories?ssh connections to Ubuntu are intermittentLimit SFTP user access to specified directoryCreate SFTP user to access specific folder only?packet_write_wait: Connection to <IPaddress> port 22: Broken pipe when using Match Group in sshd_configread and write logs in sftpTrying to setup a SFTP user with limited accessAccess sftp folderServer: After upgrade from 16.04 to 18.04 ssh and ftp refuses connectionsCreate an sftp user and ftp user who read and write for ftp user and only read sftp user. On Ubuntu
I would like to create sftp user account on Ubuntu server which has read/write access only to one specific folder. I would like this user to have rights to transfer files up and from my server via sftp. My server is hosted on Digital Ocean.
I have followed this tutorial on Digital Ocean which seems to do exactly what I want but I got stuck at Step 4.
Step 4 says that you try this command:
ssh sammyfiles@localhost
And result should be:
Error message
This service allows sftp connections only.
Connection to localhost closed.
Instead my result is:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
Next it instructs running this, which should obviously work:
sftp sammyfiles@localhost
The result should be:
SFTP prompt
Connected to localhost.
sftp>
but instead I get:
forge@BitCloud:~$ sftp misjah@localhost
misjah@localhost's password:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe
Couldn't read packet: Connection reset by peer
I get the same message if I want to sftp with this newly created user from outside:
prmbair:~ primozrome$ sftp misjah@207.xxx.xxx.xxx
misjah@207.xxx.xxx.xxx's password:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
prmbair:~ primozrome$
What am I doing wrong?
Update from comments:
Seems like problem is in the sshd_config - ChrootDirectory line. If I use ChrootDirectory %h then sftp to users home directory works, but if I use ChrootDirectory /home/user/uploads (to restrict only to one folder) then:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe.
Couldn't read packet: Connection reset by peer.
Any idea?
users openssh sftp
bumped to the homepage by Community♦ 2 hours ago
This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
add a comment |
I would like to create sftp user account on Ubuntu server which has read/write access only to one specific folder. I would like this user to have rights to transfer files up and from my server via sftp. My server is hosted on Digital Ocean.
I have followed this tutorial on Digital Ocean which seems to do exactly what I want but I got stuck at Step 4.
Step 4 says that you try this command:
ssh sammyfiles@localhost
And result should be:
Error message
This service allows sftp connections only.
Connection to localhost closed.
Instead my result is:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
Next it instructs running this, which should obviously work:
sftp sammyfiles@localhost
The result should be:
SFTP prompt
Connected to localhost.
sftp>
but instead I get:
forge@BitCloud:~$ sftp misjah@localhost
misjah@localhost's password:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe
Couldn't read packet: Connection reset by peer
I get the same message if I want to sftp with this newly created user from outside:
prmbair:~ primozrome$ sftp misjah@207.xxx.xxx.xxx
misjah@207.xxx.xxx.xxx's password:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
prmbair:~ primozrome$
What am I doing wrong?
Update from comments:
Seems like problem is in the sshd_config - ChrootDirectory line. If I use ChrootDirectory %h then sftp to users home directory works, but if I use ChrootDirectory /home/user/uploads (to restrict only to one folder) then:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe.
Couldn't read packet: Connection reset by peer.
Any idea?
users openssh sftp
bumped to the homepage by Community♦ 2 hours ago
This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
@user68186 tried addingClientAliveInterval 60this but I get the same result
– Primoz Rome
Aug 30 '17 at 15:11
The only idea I have is make sure you enter the/home/[username]/uploadsin the exact case as it appears in the system. In other words, make sure it isuploadsand notUploads. Best of luck.
– user68186
Aug 31 '17 at 16:15
add a comment |
I would like to create sftp user account on Ubuntu server which has read/write access only to one specific folder. I would like this user to have rights to transfer files up and from my server via sftp. My server is hosted on Digital Ocean.
I have followed this tutorial on Digital Ocean which seems to do exactly what I want but I got stuck at Step 4.
Step 4 says that you try this command:
ssh sammyfiles@localhost
And result should be:
Error message
This service allows sftp connections only.
Connection to localhost closed.
Instead my result is:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
Next it instructs running this, which should obviously work:
sftp sammyfiles@localhost
The result should be:
SFTP prompt
Connected to localhost.
sftp>
but instead I get:
forge@BitCloud:~$ sftp misjah@localhost
misjah@localhost's password:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe
Couldn't read packet: Connection reset by peer
I get the same message if I want to sftp with this newly created user from outside:
prmbair:~ primozrome$ sftp misjah@207.xxx.xxx.xxx
misjah@207.xxx.xxx.xxx's password:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
prmbair:~ primozrome$
What am I doing wrong?
Update from comments:
Seems like problem is in the sshd_config - ChrootDirectory line. If I use ChrootDirectory %h then sftp to users home directory works, but if I use ChrootDirectory /home/user/uploads (to restrict only to one folder) then:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe.
Couldn't read packet: Connection reset by peer.
Any idea?
users openssh sftp
I would like to create sftp user account on Ubuntu server which has read/write access only to one specific folder. I would like this user to have rights to transfer files up and from my server via sftp. My server is hosted on Digital Ocean.
I have followed this tutorial on Digital Ocean which seems to do exactly what I want but I got stuck at Step 4.
Step 4 says that you try this command:
ssh sammyfiles@localhost
And result should be:
Error message
This service allows sftp connections only.
Connection to localhost closed.
Instead my result is:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
Next it instructs running this, which should obviously work:
sftp sammyfiles@localhost
The result should be:
SFTP prompt
Connected to localhost.
sftp>
but instead I get:
forge@BitCloud:~$ sftp misjah@localhost
misjah@localhost's password:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe
Couldn't read packet: Connection reset by peer
I get the same message if I want to sftp with this newly created user from outside:
prmbair:~ primozrome$ sftp misjah@207.xxx.xxx.xxx
misjah@207.xxx.xxx.xxx's password:
packet_write_wait: Connection to 207.154.238.143 port 22: Broken pipe
Connection closed
prmbair:~ primozrome$
What am I doing wrong?
Update from comments:
Seems like problem is in the sshd_config - ChrootDirectory line. If I use ChrootDirectory %h then sftp to users home directory works, but if I use ChrootDirectory /home/user/uploads (to restrict only to one folder) then:
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe.
Couldn't read packet: Connection reset by peer.
Any idea?
users openssh sftp
users openssh sftp
edited Aug 31 '17 at 16:13
user68186
16.3k84969
16.3k84969
asked Aug 29 '17 at 15:13
Primoz RomePrimoz Rome
10624
10624
bumped to the homepage by Community♦ 2 hours ago
This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
bumped to the homepage by Community♦ 2 hours ago
This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
@user68186 tried addingClientAliveInterval 60this but I get the same result
– Primoz Rome
Aug 30 '17 at 15:11
The only idea I have is make sure you enter the/home/[username]/uploadsin the exact case as it appears in the system. In other words, make sure it isuploadsand notUploads. Best of luck.
– user68186
Aug 31 '17 at 16:15
add a comment |
@user68186 tried addingClientAliveInterval 60this but I get the same result
– Primoz Rome
Aug 30 '17 at 15:11
The only idea I have is make sure you enter the/home/[username]/uploadsin the exact case as it appears in the system. In other words, make sure it isuploadsand notUploads. Best of luck.
– user68186
Aug 31 '17 at 16:15
@user68186 tried adding
ClientAliveInterval 60 this but I get the same result– Primoz Rome
Aug 30 '17 at 15:11
@user68186 tried adding
ClientAliveInterval 60 this but I get the same result– Primoz Rome
Aug 30 '17 at 15:11
The only idea I have is make sure you enter the
/home/[username]/uploads in the exact case as it appears in the system. In other words, make sure it is uploads and not Uploads. Best of luck.– user68186
Aug 31 '17 at 16:15
The only idea I have is make sure you enter the
/home/[username]/uploads in the exact case as it appears in the system. In other words, make sure it is uploads and not Uploads. Best of luck.– user68186
Aug 31 '17 at 16:15
add a comment |
2 Answers
2
active
oldest
votes
I think there is a mistaken about the rights...
Could you show us the return of the command ls -l in your directory /var/sftp please ?
I think /var/sftp have 755 rights but not /var/sftp/uploads because the chmod command isn't recursive if we don't tell it, so you would have to type :sudo chmod 755 -R /var/sftp (the -R parameter for recursive).
With -R, all subdirectories in /var/sftp will have 755 rights.
Could you try it please ?
Good luck !
Seems like problem is in thesshd_config-ChrootDirectoryline. If I useChrootDirectory %hthen sftp to users home directory works, but if I useChrootDirectory /home/user/uploads(to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?
– Primoz Rome
Aug 30 '17 at 13:33
add a comment |
From https://man.openbsd.org/sshd_config
ChrootDirectory
Specifies the pathname of a directory to chroot(2) to after authentication. At session startup sshd(8) checks that all components of the pathname are root-owned directories which are not writable by any other user or group.
I had the same problem and the solution was to avoid using a directory in a user's home, as the /home/user directory should not be owned by root, but to create instead a directory in e.g. /var/sftp/uploads, where /var/sftp/ is root owned and /var/sftp/uploads is owned by the sftp user.
Then I can chroot the sftp user in uploads.
ChrootDirectory /var/sftp
in /etc/ssh/sshd_config
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "89"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f950979%2fsetup-sftp-user-account-and-restric-read-write-access-to-one-folder%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
I think there is a mistaken about the rights...
Could you show us the return of the command ls -l in your directory /var/sftp please ?
I think /var/sftp have 755 rights but not /var/sftp/uploads because the chmod command isn't recursive if we don't tell it, so you would have to type :sudo chmod 755 -R /var/sftp (the -R parameter for recursive).
With -R, all subdirectories in /var/sftp will have 755 rights.
Could you try it please ?
Good luck !
Seems like problem is in thesshd_config-ChrootDirectoryline. If I useChrootDirectory %hthen sftp to users home directory works, but if I useChrootDirectory /home/user/uploads(to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?
– Primoz Rome
Aug 30 '17 at 13:33
add a comment |
I think there is a mistaken about the rights...
Could you show us the return of the command ls -l in your directory /var/sftp please ?
I think /var/sftp have 755 rights but not /var/sftp/uploads because the chmod command isn't recursive if we don't tell it, so you would have to type :sudo chmod 755 -R /var/sftp (the -R parameter for recursive).
With -R, all subdirectories in /var/sftp will have 755 rights.
Could you try it please ?
Good luck !
Seems like problem is in thesshd_config-ChrootDirectoryline. If I useChrootDirectory %hthen sftp to users home directory works, but if I useChrootDirectory /home/user/uploads(to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?
– Primoz Rome
Aug 30 '17 at 13:33
add a comment |
I think there is a mistaken about the rights...
Could you show us the return of the command ls -l in your directory /var/sftp please ?
I think /var/sftp have 755 rights but not /var/sftp/uploads because the chmod command isn't recursive if we don't tell it, so you would have to type :sudo chmod 755 -R /var/sftp (the -R parameter for recursive).
With -R, all subdirectories in /var/sftp will have 755 rights.
Could you try it please ?
Good luck !
I think there is a mistaken about the rights...
Could you show us the return of the command ls -l in your directory /var/sftp please ?
I think /var/sftp have 755 rights but not /var/sftp/uploads because the chmod command isn't recursive if we don't tell it, so you would have to type :sudo chmod 755 -R /var/sftp (the -R parameter for recursive).
With -R, all subdirectories in /var/sftp will have 755 rights.
Could you try it please ?
Good luck !
answered Aug 29 '17 at 18:23
TheVincentTheVincent
1
1
Seems like problem is in thesshd_config-ChrootDirectoryline. If I useChrootDirectory %hthen sftp to users home directory works, but if I useChrootDirectory /home/user/uploads(to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?
– Primoz Rome
Aug 30 '17 at 13:33
add a comment |
Seems like problem is in thesshd_config-ChrootDirectoryline. If I useChrootDirectory %hthen sftp to users home directory works, but if I useChrootDirectory /home/user/uploads(to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?
– Primoz Rome
Aug 30 '17 at 13:33
Seems like problem is in the
sshd_config - ChrootDirectory line. If I use ChrootDirectory %h then sftp to users home directory works, but if I use ChrootDirectory /home/user/uploads (to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?– Primoz Rome
Aug 30 '17 at 13:33
Seems like problem is in the
sshd_config - ChrootDirectory line. If I use ChrootDirectory %h then sftp to users home directory works, but if I use ChrootDirectory /home/user/uploads (to restrict only to one folder) then packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe. Couldn't read packet: Connection reset by peer. Any idea?– Primoz Rome
Aug 30 '17 at 13:33
add a comment |
From https://man.openbsd.org/sshd_config
ChrootDirectory
Specifies the pathname of a directory to chroot(2) to after authentication. At session startup sshd(8) checks that all components of the pathname are root-owned directories which are not writable by any other user or group.
I had the same problem and the solution was to avoid using a directory in a user's home, as the /home/user directory should not be owned by root, but to create instead a directory in e.g. /var/sftp/uploads, where /var/sftp/ is root owned and /var/sftp/uploads is owned by the sftp user.
Then I can chroot the sftp user in uploads.
ChrootDirectory /var/sftp
in /etc/ssh/sshd_config
add a comment |
From https://man.openbsd.org/sshd_config
ChrootDirectory
Specifies the pathname of a directory to chroot(2) to after authentication. At session startup sshd(8) checks that all components of the pathname are root-owned directories which are not writable by any other user or group.
I had the same problem and the solution was to avoid using a directory in a user's home, as the /home/user directory should not be owned by root, but to create instead a directory in e.g. /var/sftp/uploads, where /var/sftp/ is root owned and /var/sftp/uploads is owned by the sftp user.
Then I can chroot the sftp user in uploads.
ChrootDirectory /var/sftp
in /etc/ssh/sshd_config
add a comment |
From https://man.openbsd.org/sshd_config
ChrootDirectory
Specifies the pathname of a directory to chroot(2) to after authentication. At session startup sshd(8) checks that all components of the pathname are root-owned directories which are not writable by any other user or group.
I had the same problem and the solution was to avoid using a directory in a user's home, as the /home/user directory should not be owned by root, but to create instead a directory in e.g. /var/sftp/uploads, where /var/sftp/ is root owned and /var/sftp/uploads is owned by the sftp user.
Then I can chroot the sftp user in uploads.
ChrootDirectory /var/sftp
in /etc/ssh/sshd_config
From https://man.openbsd.org/sshd_config
ChrootDirectory
Specifies the pathname of a directory to chroot(2) to after authentication. At session startup sshd(8) checks that all components of the pathname are root-owned directories which are not writable by any other user or group.
I had the same problem and the solution was to avoid using a directory in a user's home, as the /home/user directory should not be owned by root, but to create instead a directory in e.g. /var/sftp/uploads, where /var/sftp/ is root owned and /var/sftp/uploads is owned by the sftp user.
Then I can chroot the sftp user in uploads.
ChrootDirectory /var/sftp
in /etc/ssh/sshd_config
answered Dec 4 '18 at 10:16
WailWail
12
12
add a comment |
add a comment |
Thanks for contributing an answer to Ask Ubuntu!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f950979%2fsetup-sftp-user-account-and-restric-read-write-access-to-one-folder%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
@user68186 tried adding
ClientAliveInterval 60this but I get the same result– Primoz Rome
Aug 30 '17 at 15:11
The only idea I have is make sure you enter the
/home/[username]/uploadsin the exact case as it appears in the system. In other words, make sure it isuploadsand notUploads. Best of luck.– user68186
Aug 31 '17 at 16:15