在ubuntu上搭建sftp服务器,实现简单的多人共享

本篇文章总结了别人的博客而写成的,在这里感谢这些博主。

在ubuntu上搭建sftp服务器,实现简单的多人共享

环境:ubuntu16.04及以上


1.打开终端检查是否已经安装了ssh在终端下输入ssh

~# ssh

2.出现图片中的结果就说明以及安装了ssh

在ubuntu上搭建sftp服务器,实现简单的多人共享_第1张图片

3.如果没有安装,输入以下的命令安装ssh服务器,sudo是用管理员的权限执行

~# sudo apt-get install openssh-server

4.安装好了之后,可以查看ssh服务器是否启动

~# ps -ef | grep ssh 

5.启动服务后,开始新建用户组ssh-users和sftp-users,ssh-users是用来管理ssh服务器的用户组,sftp-users是访问sftp服务器的用户组

~# sudo addgroup ssh-users
~# sudo addgroup sftp-users

6.将系统管理员加入到ssh-users用户组,-a是不将该用户从原来的组中删除,-G group_name 是指出需要加入的用户组 

~# sudo usermod -a -G sftp-users adminId

7.给文件系统建立主文件sftp_root,用cd /home/命令进入home目录,然后创建主目录sftp_root

~# cd /home/
~# sudo mkdir sftp_root

8.下一步修改ssh的配置文件,输入下面的命令进入配置文件

~# sudo vim /etc/ssh/sshd_config

9.按下i键,进入插入模式,指针移动到随后回车调到下一行,输入以下内容。不要输入其他无关的内容,不然ssh服务器无法重启。

#只允许ssh-users及sftp-users通过SSH访问文件系统
AllowGroups ssh-users sftp-users                   
# 针对sftp-users用户                             
Match Group sftp-users                            
# 将/home/sftp_root设置为该组用户的系统根目录 
ChrootDirectory /home/sftp_root                
# 禁止TCP Forwarding和X11 Forwarding        
AllowTcpForwarding no                        
X11Forwarding no                             
# 强制该组用户仅仅使用sftp                   
ForceCommand internal -sftp                   

10.最后重启ssh服务器,管理员用户就可以访问sftp服务器了

~# service ssh restart

下面说一下如何创建子目录和sftp的用户,并为之赋予相关的权限。按照1.2.3步骤就可以建立多组用户并设置权限了。

1.创建用户组,例如:student用户组

~# sudo addgroup /home/sftp_root/student

2.创建该用户组的文件夹,并将该文件夹修改为管理员和student用户组所有,并设置只有拥有者和用户组有权进行读写运行

~# sudo mkdir student
~# sudo chown adminId:student /home/sftp_root/student
~# sudo chmod 770 /home/sftp_root/student

3.创建该组的用户,并进行相关设置,进行下面的一组命令,若要创建多个用户,只需修改用户名即可

3.1 新建用户,这里用useradd命令而不用adduser命令
~# sudo useradd student001
3.2 修改密码
~# sudo passwd student001
3.3 输入密码,再次输入密码
例如:12345678 回车 12345678 回车
3.4 将student001用户添加到sftp-users用户组下并关闭其shell访问
~# sudo usermod -G sftp-users -s /bin/false student001
3.5 将student001用户添加到student用户组
~# sudo usermod -a -G student student001

下面说一下文件访问客户端Filezilla,客户端有很多,感兴趣可以自行搜索。

官网https://www.filezilla.cn/ 

在ubuntu上搭建sftp服务器,实现简单的多人共享_第2张图片

Filezilla支持各种文件管理,觉得用着很方便。

 

注:以上可能会有错误的地方,欢迎指出。

你可能感兴趣的:(sftp服务器,linux)