当前位置:首页 » 操作系统 » linuxsftp登录

linuxsftp登录

发布时间: 2023-05-18 06:14:03

① 如何把sftp登录方式改成ssh登录

linux系统可以通过sshd的配置项,禁止凳歼某些用户sftp登陆,方法如下:
1、打开sshd的配置文件
vi/etc/ssh/sshd_config

2、修改该配置文件,增加或修改如下行
# 禁止用户user1登陆,多个用户空格分隔
DenyUsers user1
# 禁止用户组group1的所有用户登录,多个空格分隔
DenyGroups group1
3、保存配置后,重启sshd
/etc/rc.d/init.d/sshd restart
#完成上面的迅腔配置后,就可以禁止用户或用户组的用户进行SFTP登录
4、配置完毕后,在其它linux机器上使亩粗衫用如下命令进行测试
# 使用ssh测试
[root@ServerA ~]# ssh [email protected]
[email protected]'s password:
Permission denied, please try again.
# 使用sftp测试
[root@ServerA ~]# sftp [email protected]
[email protected]'s password:
Permission denied, please try again.
#Permission denied 授权被拒绝,已经实现禁用该用户使用sftp

② 怎么开启linux服务器的sftp服务

可以按照如下方式进行设置:

1、创建sftp组,groupaddsftp,创建完成之后使用cat /etc/group命令组的信息。

拓展资料

1、sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的其中一部分,是一种传输档案至 Blogger 服务器的安全方式。

2、其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol)的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。

③ 服务器把ssh的端口号改了,在linux终端怎么用sftp连接

从技术角度来分析,几个要求:
1、从安全方面看,sftp会更安全一点
2、线上服务器提供在线服务,对用户需要控制,只能让用户在自己的home目录下活动
3、用户只能使用sftp,不能ssh到机器进行操作
提供sftp服务,可以用系统自带的internal-sftp,也可以使用vsftpd,这里需求不多,直接选用internal-sftp。
限制用户只能在自己的home目录下活动,这里需要使用到chroot,openssh 4.8p1以后都支持chroot,我现在用的是CentOS 6.3,自带的openssh已经是5.3p1,足够了。
可以输入:
# ssh -V
来查看openssh的版本,如果低于4.8p1,需要自行升级安装,不在这里具体介绍了。
假设,有一个名为sftp的组,这个组中的用户只能使用sftp,不能使用ssh,且sftp登录后只能在自己的home目录下活动
1、创建sftp组
# groupadd sftp
2、创建一个sftp用户,名为mysftp
# useradd -g sftp -s /bin/false mysftp
# passwd mysftp
3、sftp组的用户的home目录统一指定到/data/sftp下,按用户名区分,这里先新建一个mysftp目录,然后指定mysftp的home为/data/sftp/mysftp
# mkdir -p /data/sftp/mysftp
# usermod -d /data/sftp/mysftp mysftp
4、配置sshd_config
编辑 /etc/ssh/sshd_config
# vim +132 /etc/ssh/sshd_config
找到如下这行,并注释掉
Subsystem sftp /usr/libexec/openssh/sftp-server
添加如下几行
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory /data/sftp/%u
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
解释一下添加的几行的意思
Subsystem sftp internal-sftp
这行指定使用sftp服务使用系统自带的internal-sftp
Match Group sftp
这行用来匹配sftp组的用户,如果要匹配多个组,多个组之间用逗号分割
当然,也可以匹配用户
Match User mysftp
这样就可以匹配用户了,多个用户名之间也是用逗号分割,但我们这里按组匹配更灵活和方便
ChrootDirectory /data/sftp/%u
用chroot将用户的根目录指定到/data/sftp/%u,%u代表用户名,这样用户就只能在/data/sftp/%u下活动,chroot的含义,可以参考这里:http://www.ibm.com/developerworks/cn/linux/l-cn-chroot/
ForceCommand internal-sftp
指定sftp命令
AllowTcpForwarding no
X11Forwarding no
这两行,如果不希望该用户能使用端口转发的话就加上,否则删掉
5、设定Chroot目录权限
# chown root:sftp /data/sftp/mysftp
# chmod 755 /data/sftp/mysftp
错误的目录权限设定会导致在log中出现”fatal: bad ownership or modes for chroot directory XXXXXX”的内容
目录的权限设定有两个要点:
1、由ChrootDirectory指定的目录开始一直往上到系统根目录为止的目录拥有者都只能是root
2、由ChrootDirectory指定的目录开始一直往上到系统根目录为止都不可以具有群组写入权限
所以遵循以上两个原则
1)我们将/data/sftp/mysftp的所有者设置为了root,所有组设置为sftp
2)我们将/data/sftp/mysftp的权限设置为755,所有者root有写入权限,而所有组sftp无写入权限
6、建立SFTP用户登入后可写入的目录
照上面设置后,在重启sshd服务后,用户mysftp已经可以登录,但使用chroot指定根目录后,根应该是无法写入的,所以要新建一个目录供mysftp上传文件。这个目录所有者为mysftp,所有组为sftp,所有者有写入权限,而所有组无写入权限
# mkdir /data/sftp/mysftp/upload
# chown mysftp:sftp /data/sftp/mysftp/upload
# chmod 755 /data/sftp/mysftp/upload
7、重启sshd服务
# service sshd restart
到这里,mysftp已经可以通过sftp客户端登录并可以上传文件到upload目录。
如果还是不能在此目录下上传文件,提示没有权限,检查SElinux是否关闭,可以使用如下指令关闭SElinux
关于Linux命令的介绍,看看《linux就该这么学》,具体关于这一章地址3w(dot)linuxprobe/chapter-02(dot)html
修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。或者
# setenforce 0

④ linux的sftp命令

linux下sftp命令很多人都只是了解了语法却不知道具体用法,下面由我为大家整理了linux下sftp命令的相关知识,希望对大家有帮助!

linux的sftp命令

1.常用登陆方式:

格式:sftp 《user》@《host》

通过sftp连接《host》,端口为默认的22,指定用户《user》。

2.查看sftp支持的命令

使用help命令,查看支持的命令,如:

sftp》help

(其中命令前面有“l”表示本地执行,其他表示在所登录的远程主机上面执行)

3.基本的使用

sftp主要是用来传输文件的,包括上传文件(从本机到远程主机) ,下载文件(从远程主机到本机)。

(1)文件下载

get [-Ppr] remote [local]

如:get test.cpp 。/Project/

将远程当前目录下的文件test.cpp下载到本地当前目录的Project文件夹中。

(2)文件上传

put [-Ppr] local [remote]

如:put /home/liu/Software/RHEL_5.5 x86_64.iso /home/xudong/Blog/

将本地/home/liu/Software/目录下的ios文件传送到远程登陆主机的/home/xudong/Blog/目录下。

(3)其他命令

可以使用命令还是有几个的,如ls、lls;cd、lcd;pwd、lpwd等。具体查看help输出吧。

sftp就是secure file transfer program,它基于ssh,用它在两个Linux系统间传递文档非常方便。

要使用sftp传递文档,首先应该在服务器端打开ssh服务,如果没有打开,一般可以通过下面的命令打开:

# /etc/init.d/sshd start

然后就可以在客户端通过sftp登录服务器端进行文档传递操作,如下:

$ sftp [-oPort=port_number] username@server_ip[:file1 file2 。。。]

补充:Linux的sftp命令的参数说明

-o 用来向ssh传递参数,比如-oPort=222,会告诉ssh使用连接服务器的222端口,而不是默认的22端口。这个在遇到服务器端把ssh服务默认的22号端口改变的情况时会有用。

后面的file1、file2代表文件名,也可以是一个目录。在没有指定文件时会打开一个交互界面,在交互界面下可以通过命令来传递文档。

如:

$ sftp -o port = 222 [email protected]

Linux的sftp命令的命令说明

在sftp命令的交互界面下,有很多命令可以用,比如:cd、ls、pwd、bye、chmod、chgrp、chown、df、get、help、mkdir等等。当然这些命令都是针对服务器端的操作,其中一些命令在加l前缀的情况下可以实现在本地下的操作。比如,lpwd命令会打印本地当前工作目录(即连接sftp前的当前工作目录)。这些命令中有两个是用来交换文档的,它们是get和put命令,如下:

》 put local_path [remote_path]

》 get remote_path [lcoal_path]

put 命令会把本地文件或目录“推”到服务器端;get命令则把服务器端文件或目录“拉”下来。

上面就是Linux使用sftp命令传输文件相关介绍了,相较于ftp而已,sftp命令传输文件更加安全,推荐使用sftp命令传文件。

⑤ linux怎么限制用户ssh登录允许sftp登录

你可以用想限制的用户登陆上去,然后新建一个sftp文件,并登陆成功,把这个文件拷给你想授权的人,放旅旅闹到的拆罩xmanager下,就能直接登陆镇谨!

默认sftp文件保存在:

C:


⑥ linux怎么限制用户ssh登录允许sftp登录

在linux中出于安全的需要,我们会禁止某些用户SSH登陆系统进行操作。我这里以centos操作系统为例记录下如何进行处理。
1、打开sshd的配置文件
vi /etc/ssh/sshd_config2、修改该配置文件,增加或修改如下行
# 禁止用户user1登陆,多个空格分隔DenyUsers user1 # 禁止用户组group1的所有用户登录,多个空格分隔DenyGroups group13、保存配置后,重启sshd
/etc/rc.d/init.d/sshd restart 完成上面的配置后,就可以禁止用户或用户组的用户进行登录了,第2步中的两个是可以只填一个的,可以根据需要进行调整。配置完毕后,在其早备他linux机器上使用如下命令进樱睁扰行测试:
# 使用ssh测试[root@ServerA ~]# ssh [email protected]@192.168.1.168's password: Permission denied, please try again. # 使用sftp测试[root@ServerA ~]# sftp [email protected]@192.168.1.168's password: Permission denied, please try again. 可以看到,确实被系统禁止了,从而也就完成了我们想要的控制了。但这个有一个缺陷是,无法禁止只允许sftp而不允许ssh,如果要这样做,估计只能够单独搭建脊旦ftp服务器,比如vsftp,后续再考虑这个。

⑦ linux,新创建的用户无法登录ftp(vsftpd),包括root用户

1、首先在电脑悔磨中,打开并登录linux系统,查看当前用户名称,如下图所示。

⑧ Linux下如何进行SFTP用户权限设置

1、打开Linux文件查看有哪些权限。

注意事项:

Linux用户分三种,超级用户,普通用户,伪用户,超级用户拥有所有权限,伪用户一般和进程相关,无需登录樱薯野陆系统,所以常说的管理用户权限指脊脊者的是管理Linux中普通用户的权限。

⑨ linux下如何使用sftp命令。

回车提示输入密码。进入提示符sftp如果登陆远程机器不是为了上传下载文件,而是要修改远程主机上的某些文件。可以
ssh [email protected] (其实sftp就是ssh 的一个程式。)
sftp get /var/www/fuyatao/index.php /home/fuyatao/
这条语句将从远程主机的 /var/www/fuyatao/目录下将 index.php 下载到本地 /home/fuyatao/目录下。
sftp put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/
这条语句将把本地 /home/fuyatao/downloads/目录下的 linuxgl.pdf文件上传至远程主机/var/www/fuyatao/ 目录下。
改变路径可以用cd ,改变本机路径可以用 lcd;
ls rm rmdir mkdir 这些命令都可以使用。同理调用本机都是加 l , 即 lls lrm.
要离开sftp,用exit 或quit、 bye 均可。详细情况可以查阅 man sftp.
如果觉得在命令行模式下不太方便,可以 sudo apt-get install gftp。在图形界面下操作就简便多了。

⑩ linux/centos普通用户sudo开启sftp

一般情况下,从安全考虑,root是禁止ssh登录,普通用户通过sudo操作,一般都没问题,但是要通过ftp传输文件就麻烦了,文件是属于root用户的,普通用户即使等登录也不能更改文件,也要加上sudo命令才能更改文件,通过winscp软件可以实现实现这个功能,详细配置查看这个帖子:

http://blog.csdn.net/xuejinliang/article/details/52301349

配置图1(http://upload-images.jianshu.io/upload_images/3727878-911d343f96035822.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

配置-高级-SFTP    sudo /usr/libexec/openssh/sftp-server

配置图2(http://upload-images.jianshu.io/upload_images/3727878-52fa5c95dcc9d859.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

配置-高级-Shell   sudo -i

附加背景知识:

https://en.wikibooks.org/wiki/OpenSSH/Cookbook/File_Transfer_with_SFTP

在主流linux系统版本当中,默认都有安装openssl和openssh包,都有ssh命令,也就是说默认安装好了SFTP服务器和sftp命令,不需要额外配置vsftp。

sftp有两种实现

1.sftp-server默认实现

2.internal-sftp可更改用户对应的目录

本来考虑不用sudo,而是通过internal-sftp来实现,把普通用户加入到root用户组,把文件的root用户组权限加上写的权限来实现的,后来发现没用,

因为目录权限设置要遵循2点:

ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主和属组必须是root;

ChrootDirectory设置的目录权限及其所有的上级文件夹权限,只有属主能拥有写权限,权限最大设置只能是755。

如果不能遵循以上2点,即使是该目录仅属于某个用户,也可能会影响到所有的SFTP用户。

热点内容
缓存区数据读写原理 发布:2025-05-15 03:39:57 浏览:585
编译器生成的是二进制文件吗 发布:2025-05-15 03:38:42 浏览:955
运营为什么区分ios和安卓 发布:2025-05-15 03:30:02 浏览:630
主播网站源码 发布:2025-05-15 02:50:56 浏览:168
中文编程语言有哪些 发布:2025-05-15 02:48:59 浏览:536
配置中心应急流程有哪些 发布:2025-05-15 02:37:31 浏览:670
php宏定义 发布:2025-05-15 02:32:54 浏览:271
咸鱼支付密码哪里改 发布:2025-05-15 02:32:53 浏览:521
存储机箱 发布:2025-05-15 02:31:31 浏览:837
编程很累吗 发布:2025-05-15 02:29:25 浏览:553