linux禁止root远程登录 scp怎么获取root权限,WinSCP下su切换到root的技巧(禁止root远程ssh登录时)...

一般服务器为安全禁止ssh下root账号登录,此时使用sftp登录管理服务器只能使用普通账号登录,给管理带来诸多不便,可以设置为特定普通SSH用户添加sudo权限,登录到sftp时可sudo切换到root权限下。

查看sftp-server执行文件目录:

1

2

cat /etc/ssh/sshd_config|grep sftp

Subsystem   sftp    /usr/libexec/openssh/sftp-server

编辑/etc/sudoers为特定用户添加执行sftp sudo权限:

1

2

#http://www.haiyun.me

user ALL=NOPASSWD:  /usr/libexec/openssh/sftp-server

只要在root权限下visudo,添加如下一行即可取消sudu时的密码:

yourusername ALL=NOPASSWD: ALL

为了可以在非tty的环境下sudo,我们还需要注释掉下面一行:

Defaults requiretty

后续如果登录失败日记显示:

1

sorry, you must have a tty to run sudo ; TTY=unknown

需在/etc/sudoers内注释此行:

1

#Defaults    requiretty

sftp客户端设置登录以sudo权限执行sftp,下图以winscp为例:

1

sudo /usr/libexec/openssh/sftp-server

185515554_1_20200316123242100.png

此时用winscp登录就是root权限了,对整个系统的文件都拥有生杀大权。。。

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

一般为了安全,都会禁止root登陆ssh,但是用普通用户在打开winscp会话后无法通过su获得root权限,能操作的文件就很有限了(当然你可以提高普通用户的权限,但并不推荐这样做)。所以在开始会话前就要通过sudo命令切换到root用户。

首先,新建会话的时候协议要选择SFTP或SCP,因为FTP协议不支持这个功能。具体选择哪个,要看你服务器的协议信息。

要看服务器的协议信息,可以进入“Commands” > “Server/protocol Information”.中文对应的是 “命令” > “服务器/协议信息”

可以看到:

185515554_2_20200316123242444.jpg

可见我使用的是OpenSSH服务。

第一步:选择协议

这里我用了简体中文语言包,所以设置项显示的是中文。协议我选择了SCP就无法登陆,是不是因为我没装SCP服务呢?

第二步:指定SFTP目录

之前查询过协议信息,使用了OpenSSH服务,所以我要为登陆的普通用户指定SFTP服务的二进制文件。

在SFTP标签的SFTP服务器选项,填上:

sudo/bin/sftp-server

当然有的系统可能保存在别的目录,比如我填的就是:

sudo/usr/lib/openssh/sftp-server

如果第一步选择的是SCP协议,那就没有第二步的设置项了,可以直接在SCP/Shell标签,Shell栏填上

sudo-s

第三步:设置用户权限

因为之前设置的目录对于普通用户是没有访问和执行的,而我们也无法在会话建立后切换到root用户,所以必须给普通用户访问SFTP二进制文件的权限。

先用root用户登陆终端并编辑/etc/sudoers文件。在root那一行下面添加普通用户yourusername,比如:

yourusername ALL=NOPASSWD:ALL

这样设置并不安全,该用户可以从任何主机连接,并不用输入root密码而使用任何命令。

所以需要限制该用户的命令,做如下修改:

yourusername ALL=NOPASSWD:/bin/sftp-server

后面的SFTP目录根据自己的情况填写,这样该用户执行SFTP服务的时候就不需要root密码了。

登陆后,你就可以看到已经有权限来访问所有文件了。

[related_posts limit="3"]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值