Step 1 在root用户下创建维护账号的家目录,此处以创建userftp帐号的家目录为例。

mkdir -p /chroot/home/user

Step 2 在root用户根目录下执行以下命令设置各目录权限。

chown -R root:root /chroot /chroot/home /chroot/home/user
chmod 755 /chroot /chroot/home/user

Step 3 创建SFTP用户并加入sftponly用户组中。

useradd -d /chroot/home/user -G sftponly -s /bin/false -m userftp
passwd userftp

Step 4 在root用户下创建需要镜像的目录。

mkdir -p /chroot/home/user/tomcat/logs

Step 5 在root用户根目录下执行以下命令设置各目录权限。

chown -R userftp:100 /chroot/home/user/tomcat/logs
chmod 755 /chroot/home/user/tomcat/logs

Step 6 绑定镜像目录。

mount --bind -o ro /home/user/tomcat/logs /chroot/home/user/tomcat/logs

备注:单板重启时,需要将绑定镜像目录命令加在/etc/fstab文件中。

Step 7 修改SFTP配置文件。

echo "Match user userftp" >> /etc/ssh/sftpd_config
echo ' ChrootDirectory %h' >> /etc/ssh/sftpd_config
echo " Forcecommand internal-sftp -l INFO -f AUTH" >> /etc/ssh/sftpd_config
echo "Match" >> /etc/ssh/sftpd_config
/etc/init.d/sftpd restart

Step 8 修改SSH配置文件。

echo "Match user userftp" >> /etc/ssh/sshd_config
echo ' ChrootDirectory %h' >> /etc/ssh/sshd_config
echo " Forcecommand internal-sftp -l INFO -f AUTH" >> /etc/ssh/sshd_config
echo "Match" >> /etc/ssh/sshd_config
/etc/init.d/sshd restart

Step 9 设置sftp服务开机自启动。

chkconfig --level 35 sftpd on

SSH&SFTP服务分离+家目录锁定的更多相关文章

  1. Linux SSH和SFTP服务分离

    Linux SSH和SFTP服务分离 学习了:https://www.cnblogs.com/zihanxing/articles/5665383.html 都是监听22端口:

  2. Linux 7.5 SSH服务和SFTP服务分离

    SFTP是SSH的一部分,SFTP没有单独的守护进程,它必须使用SSHD守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像是一个服务器程序,而更像是一个客户端程序. ...

  3. Linut ssh sftp服务重启

    在网上,收了半天,终于找到这个,记录一下~哈~ RedHat Linux 重启SSH /etc/init.d/sshd restart 重启SFTP /etc/init.d/vsftpd restar ...

  4. Debian 8开启sftp服务

    看到某云的CDN居然是使用ftp这种早该淘汰的协议,不禁有些吐槽.ftp曾经作为互联网上最重要的协议,但漫长使用过程中体现出的各种缺点,已不适合再使用.其中最致命的问题就是明文传输用户密码.建议使用这 ...

  5. Linux设置SFTP服务用户目录权限

    我们有时会遇到这样的需求,限制一个Linux用户,让他只能在指定的目录下进行添加.修改.删除操作,并且只能使用sftp登录服务器,不能用ssh操作.这些可以通过配置sftp服务实现. 提供sftp服务 ...

  6. Linux - 设置SFTP服务用户目录权限

    我们有时会遇到这样的需求,限制一个Linux用户,让他只能在指定的目录下进行添加.修改.删除操作,并且只能使用sftp登录服务器,不能用ssh操作.这些可以通过配置sftp服务实现. 创建新用户www ...

  7. 开启sftp服务日志并限制sftp访问目录

    目录导航 目录导航 开启sftp日志 修改sshd_config 修改syslogs 重启服务查看日志 限制sftp用户操作目录 前提说明 1. home目录做根目录 2. 单独创建目录做根目录 方法 ...

  8. Centos开启telnet/ssh/ftp/sftp服务

    Telnet 开启telnet服务步骤: 1.   查看CentOS/Telnet_server版本:#cat /etc/issue,   #rpm -qa | grep telnet 2.   安装 ...

  9. Centos7.3安装sftp服务和ssh

    Centos安装SFTP 安装SFTP服务         1. 查看openssh版本             ssh -V             openssh版本必须大于4.8p1       ...

随机推荐

  1. [place recognition]NetVLAD: CNN architecture for weakly supervised place recognition 论文翻译及解析(转)

    https://blog.csdn.net/qq_32417287/article/details/80102466 abstract introduction method overview Dee ...

  2. POJ 2337 Catenyms

    http://poj.org/problem?id=2337 题意: 判断给出的单词能否首尾相连,输出字典序最小的欧拉路径. 思路: 因为要按字典序大小输出路径,所以先将字符串排序,这样加边的时候就会 ...

  3. POJ 1047 Round and Round We Go

    https://vjudge.net/problem/POJ-1047 题意: 给一个整数,它的长度为n,从1开始一直到n和该整数相乘,判断每次结果是否和原来的整数是循环的. 思路: 大整数的乘法. ...

  4. BZOJ4811 [Ynoi2017]由乃的OJ

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...

  5. python输出日期时间

    import datetime base = datetime.datetime.today() , ): print(base + datetime.timedelta(days=x))

  6. python 字符串输出

    >>> 'spam eggs' # single quotes 'spam eggs' >>> 'doesn\'t' # use \' to escape the ...

  7. 使用dos2unix批量转换文件

    使用dos2unix批量转换文件 dos2unix是Linux下的一个用户转换格式的程序,由于windows上文件的结束符和linux上的不同,那么在windows上编写的文件或者是脚本在Linux上 ...

  8. Prototype(原型)

    意图: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. 适用性: 当要实例化的类是在运行时刻指定时,例如,通过动态装载:或者为了避免创建一个与产品类层次平行的工厂类层次时:或者当一个 ...

  9. [java]String和Date、Timestamp之间的转换

    一.String与Date(java.util.Date)互转  1.1 String -> Date Date date = DateFormat.parse(String  str); St ...

  10. node中session的管理

    请看这个博客:   http://spartan1.iteye.com/blog/1729148 我自己的理解 session俗称会话. 第一次访问服务器的时候由服务器创建,相当于一个cookie(就 ...