Linux ssh,sftp,scp使用方法,以及怎样设置黑白名单

远程登录操作步骤

要求,两个客户端必须联网   

  • ssh+空格+要连接的用户名+@+用户IP地址
  • 如果对方端口不是默认值(22) ssh+空格+要连接的用户名+@+用户IP地址 + -p + 端口号 (注意p是小写)
  • 更改ssh链接端口方法
    • vi /etc/ssh/sshd_config 进入端口更改界面更改端口号Port 22 (22是系统默认值,更改的值必须大于1024),并把端口号那一行的注释标识符“#”去掉。保存退出
    • service sshd restart 重启sshd端口
    • vi /etc/sysconfig/iptables 打开防火墙文件,打开后把原来默认端口号的一行复制到下一行,把端口号更改为之前修改的值,保存退出
    • service iptables restart 重启防火墙
  •  进行远程连接操作,如果连接不成功,输入命令vi /etc/selinux/config,把SELINUX=enforcing,改为disabled。虚拟机再重启

 

sftp命令链接传输文件

(前提要求两个用户可以远程连接)

sftp + 空格 + -oPort=端口号 + 用户名@ + IP地址 (“-oPort=端口号”如果是默认端口,不用填写此项,注意P 大写,电脑终端连接虚拟机为“-P”

get + 文件名 获取远程段文件

get -r +目录名 获取远程段文件夹

put + 文件名 向远程段发送本地文件

put -r +目录名 向远程段发送文件夹(因为系统版本问题,可能会不成功。我们可以退出sftp模式把文件夹打包或压缩,再键入sftp模式进行传输)

 

scp命令使用方法

前提条件,远程连接断开

命令格式 scp [选项] 文件位置 文件目标位置

  常用选项参数

-v 显示进度

-C 压缩传输选项,这个并不推荐使用,我们一般本地压缩后在传输

-P 指定端口

-4 强行使用 IPV4 地址

-6 强行使用 IPV6 地址

-r 遍历路径复制(一般用于目录的传播)

-l 限制最大传输带宽,单位是Kb/s

  • 从远程端复制到本地

复制文件 scp + 空格 + 用户名@ + 远程端用户IP地址 + 冒号“:” + 文件路径 + 空格 + 本地放置路径

复制文件夹 scp + 空格 + -r + 用户名@ + 远程端用户IP地址 + 冒号“:” + 文件路径 + 空格 + 本地放置路径

(如果需要多个选项参数同时使用可并列书写并用空格隔开,比如:

复制文件夹 scp + 空格 + -r + 空格 + -P+ 空格 + 端口号+ 用户名@ + 远程端用户IP地址 + 冒号“:” + 文件路径 + 空格 + 本地放置路径

scp -r -P 8888 root@192.168.*.***:/4 /root 把远程端端口改为8888的root用户根目录下的文件夹4复制到本地root目录下

  • 从本地端复制到远程

scp + 选项 + 本地文件或目录路径 + 远程端用户名@ +远程端IP地址 +冒号'':'' + 远程端存放的地址

scp -P 8888 ./4.tar root@192.168.*.***:/root 把本地的4.tar文件复制到远程端IP为192.168.*.***的root目录下

 

禁止用户远程登录自己的root账户

  1. 1.   /etc/ssh/sshd_config
  2. 2.   PermitRootLogin no #禁止root远程登录 把yes改为no 把注释符号“#”删掉
  3. 3.   重启sshd

开小号设置极小权限 改端口

登陆后su切换到root用户仍然可以登录

添加黑白名单方法 黑白名单冲突以白名单为准

添加白名单 vi /etc/hosts.allow----->添加sshd:+被禁止访问的IP地址

添加黑名单 vi /etc/hosts.deny

 

转载于:https://www.cnblogs.com/tiaowangdeying/p/10508163.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux设置SFTP,可以通过以下步骤进行操作: 1. 确保已经安装了OpenSSH服务器。可以使用以下命令检查是否已安装: ``` sudo apt-get install openssh-server ``` 2. 打开SSH配置文件`/etc/ssh/sshd_config`,并确保以下配置项已启用或添加: ``` Subsystem sftp internal-sftp Match user sftpuser ChrootDirectory /data/sftp ForceCommand internal-sftp X11Forwarding no AllowTcpForwarding no ``` 这些配置项的含义如下: - `Subsystem sftp internal-sftp`:指定使用系统自带的internal-sftp作为SFTP服务。 - `Match user sftpuser`:匹配用户,可以根据需要添加多个用户或组。 - `ChrootDirectory /data/sftp`:设置用户的SFTP根目录为`/data/sftp`,确保用户只能在自己的目录下活动。 - `ForceCommand internal-sftp`:强制执行内部SFTP命令,并忽略任何`~/.ssh/rc`文件中的命令。 - `X11Forwarding no`:禁止用户使用X11转发。 - `AllowTcpForwarding no`:禁止用户使用端口转发。 3. 保存并关闭配置文件。 4. 重启SSH服务以使配置生效: ``` sudo service ssh restart ``` 5. 确保用户的SFTP根目录已创建,并设置正确的权限: ``` sudo mkdir /data/sftp sudo chown root:root /data/sftp sudo chmod 755 /data/sftp ``` 这将创建一个名为`/data/sftp`的目录,并将其所有权设置为root用户。 6. 创建SFTP用户并设置密码: ``` sudo adduser sftpuser sudo passwd sftpuser ``` 这将创建一个名为`sftpuser`的用户,并设置密码。 现在,您已经成功设置SFTP服务,并限制了用户只能在其指定的目录下进行操作。用户可以使用SFTP客户端连接到服务器,并通过SFTP协议进行文件传输。 #### 引用[.reference_title] - *1* *2* [Linux服务器下搭建SFTP服务](https://blog.csdn.net/huanglm_OneWholeLife/article/details/124636003)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [linux配置sftp及权限设置](https://blog.csdn.net/weixin_36108913/article/details/116608101)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值