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. Cube Solution

  2. CSS之旋转立方体

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. Tornado源码分析 --- Redirect重定向

    “重定向”简单介绍: “重定向”指的是HTTP重定向,是HTTP协议的一种机制.当client向server发送一个请求,要求获取一个资源时,在server接收到这个请求后发现请求的这个资源实际存放在 ...

  4. HTML5 Canvas 代码检测浏览器是否支持

    在创建HTML5 Canvas元素之前,首先要检测浏览器是否能够拿支持他,如果不支持,就要用文字或图片替代,检测代码如下所示. <!DOCTYPE html> <html> & ...

  5. Homebrew/Linuxbrew 安装常有工具

    Homebrew https://brew.sh/ Install: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent ...

  6. jquery属性值选择器

    $("[attribute|='value']") 选择指定属性值等于给定字符串或改字符串为前缀(该字符串后跟一个连字符“-”)的元素. attribute: 一个属性名 valu ...

  7. 源码编译运行android emulator

    source buile/envsetup.sh lunch sdk-eng make sdk -j2 编译完之后,sdk安装在了下面的目录里 ANDROIID_DIR/out/host/linux- ...

  8. oracle问题集棉

    1. 在未安装orcale客户端时,使用pl/sql登录数据库服务器时,报错ORA -12543:TNSdestination host unreachable 2.无法通过ip地址远程连接ORACL ...

  9. c++下为使用pimpl方法的类编写高效的swap函数

    swap函数是c++中一个常用的函数,用于交换两对象的值,此外还用于在重载赋值运算符中处理自赋值情况和进行异常安全性编程(见下篇),标准模板库中swap的典型实现如下: namespace stl { ...

  10. JDk和Mevan安装和配置

    一.Mevan安装和配置 1.下载Maven 官方下载地址:http://maven.apache.org/download.html 选择你所希望下载的版本,并保存到常用安装目录.这里以Maven ...