RHEL5.5配置SFTP-ONLY访问


RHEL中建议用SSH远程访问,但是有时我们只希望用户可以访问服务器上的文件,但不能登陆服务器进行操作,也就是不能SSH登陆,但是可以通过SFTP进行文件传输。通过以下配置可以进行控制。

如果控制sftp目录,需要openssh 4.8p1以上,以下就别折腾了。如果版本低,重装一下,下载地址如下:

http://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/

查看ssh版本


1、 配置telnet连接,因为重装ssh的话需要通过telnet来远程(vnc也行)

查看安装的telnet


配置telnet的disable为no

RHEL5.5配置SFTP-ONLY访问_第1张图片

配置telnet允许root登陆,注释pam_securetty.so这行

RHEL5.5配置SFTP-ONLY访问_第2张图片

重启telnet服务


2、 telnet登陆服务器,停止ssh


查看原openssh的安装情况


全部卸载

RHEL5.5配置SFTP-ONLY访问_第3张图片

3、 安装最新版openssh,此文使用的是openssh-6.0p1

#cdopenssh-6.0p1

#./configure--prefix=/usr/local/ssh --sysconfdir=/etc/ssh --with-pam --with-zlib --with-ssl-dir=/usr/local/ssl--with-md5-passwords --mandir=/usr/share/man

#make

#makeinstall

# cp /usr/local/ssh/bin/* /usr/bin/

# cp /usr/local/ssh/sbin/* /usr/sbin/

验证安装结果


将ssh加入启动服务,配置开机启动

RHEL5.5配置SFTP-ONLY访问_第4张图片

ssh安装完成,停止telnet后,可以回到ssh远程了。

4、 例如:想把目录/work/git/gitspace作为sftp的访问根目录,并控制用户只能通过sftp进行文件访问,而不能通过ssh登陆,则配置如下。

建立用户组sftp-only


创建用户sftpadmin指定为sftp-only组,并shell为/sbin/nologin


配置ssh,使用户组sftp-only下的用户仅允许sftp且根目录为/work/git/gitspace

#vi/etc/ssh/sshd_config

将Subsystem部分修改如下

RHEL5.5配置SFTP-ONLY访问_第5张图片

重启ssh服务,用sftpadmin用户登陆尝试。

你可能感兴趣的:(shell,服务器,ssh)