1、使用sftp默认的端口号进行登录
aiuap_cj@cuchc802:~> sftp aisftp@10124163133
aisftp@10124163133's password:
Connected to 10124163133
sftp>
备注:可以连接,但是并没有显示当前的端口号
2、使用-P 端口号的方式进行登录
aiuap_cj@cuchc802:~> sftp -P 21 aisftp@10124163133^Caiuap_cj@cuchc802:~> sftp -P 22 aisftp@10124163133aisftp@10124163133's password: Connected to 10124163133
sftp>
备注:发现21端口是无法连接的,使用22端口就能进行连接,所以,默认的sftp端口号22,同时呢,如果其他的sftp服务器的端口号修改之后,可以通过-P来指定要通过哪个端口号连接。
扩展资料
linux修改sftp端口的方法:
SSH配置文件有两个都放在/etc/ssh/ssh_config和/etc/ssh/sshd_config在ssh_config中,找到#port22,在其下面就加入port 8080;
同时,在sshd_config中,找到#port 22,在其下面就加入port8080(与上面相同)
之后重启sshservice sshd restart。
2密钥key方式
通过秘钥方式进行sftp连接,需要在本地生成秘钥:ssh-keygen,然后一路回车或两次输入passphrase。接着在ssh文件夹下使用命令 ssh-copy-id 账号@118XXXXXX(目标服务器ip),将公钥加入到目标服务器的authorized_keys中,接着登录服务器进行ssh目录,chmod 664 authorized_keys,赋予权限。如果是mac系统可以使用ssh-keygen -e。
秘钥文件路径keyFile是本地的私钥路径(包含文件名)。下面简单验证一下:
我保持本地私钥文件位置正确的情况下,改变服务器的私钥位置或名字,仍能够正常访问。
在秘钥验证时,我将keyFile路径设置为一个本地不存在的文件的路径,报错如下:
我再把参数keyFile变为一个本地存在的文件,但不是私钥文件位置。报错如下:
我将passphrase参数设置任意一个值,还是可以成功连接。这一点很疑惑,不知道为啥,但成功了就高兴。
propertiesput("StrictHostKeyChecking", "no");StrictHostKeyChecking有三种选项,no、ask、yes。这三个选项代表了不同的级别,yes最高,no最低。在ssh访问服务器的过程中,会将服务器的公钥保存到本地的~/ssh/known_hosts中,每次访问服务器都会检查此公钥是否发生变化,如果发生了变化,则这三个选项的设置如下:
no:自动将服务器新的公钥保存到known_hosts中,并发出一个警告;
ask:拒绝连接到服务器,且发出一个警告;
yes:拒绝连接到服务器,且不发出警告;
一般在测试环境下使用no,生产环境使用yes或ask。
参考: >
教程: 原文链接
如果是采用vm虚拟机安装服务,建议安装之前做一个快照:虚拟机---快照---拍摄快照。
第二行命令:将alice用户从所有其他用户组移除,并加入到sftp_users组,并且关闭shell访问
6修改配置文件
内容如下:
7重启系统
8工具验证winscp
ailce用户只对share目录有权限
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)