debian安装ssh(傻瓜教程)+证书免密登录

简介: debian安装ssh(傻瓜教程)+证书免密登录
  • 一、先安装
  • apt-get install -y ssh
  • 我这里已经安装好了就不截图了

  • 看下激活状态
  • service sshd status
  • sshd代表是一个可持续的长连接服务

  • 如果不是active就用systemctl start sshd激活,没有报错就可以


  • 只允许特定ip连接(仅允许client 客户端进行ssh 访问,其余所有主机的请求都应该拒绝;)

  • -P  --policy          定义默认策略
  • -L  --list            查看iptables规则列表
  • -A  --append          在规则列表的最后增加1条规则
  • -I  --insert          在指定的位置插入1条规则
  • -D  --delete          从规则列表中删除1条规则
  • -R  --replace        替换规则列表中的某条规则
  • -F  --flush          删除表中所有规则
  • -Z  --zero            将表中数据包计数器和流量计数器归零
  • -X  --delete-chain    删除自定义链
  • -v  --verbose        与-L他命令一起使用显示更多更详细的信息
  • 先清楚所有默认规则

  • iptables -F#清除预设表filter中的所有规则链的规则
  • iptables -X#清除预设表filter中使用者自定链中的规则

  • 先默认禁止所有
  • iptables -P INPUT DROP #进来的所有数据包丢弃
  • iptables -P FORWARD DROP #转发的所有数据包丢弃
  • iptables -P OUTPUT DROP #出去的所有数据包丢弃


  • 只允许ip为192.168.1.102/24的客户机可以ssh
iptables -A INPUT -s sip -d dip -p tcp --dport 2222 -j ACCEPT
iptables -A OUTPUT -d dip -d dip -p tcp --sport 2222 -j ACCEPT


  • 保存,重启也不丢失配置
  • 默认情况下,Debian 9的防火墙(iptables)规则不是持久化的,会在服务器下次重启的时候自动被清空。通过以下方法,可以把防火墙规则保存下来,并且在服务器重新启动的时候自动加载最新的防火墙规则。
  • 一、保存防火墙规则到文件中
iptables-save > /etc/iptables.up.rules
  • 二、配置启动后自动加载最新的防火墙规则
  • vi /etc/network/if-pre-up.d/iptables
  • /etc/network/if-pre-up.d/iptables文件内容如下:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.up.rules
  • 三、给文件增加可执行权限
chmod +x /etc/network/if-pre-up.d/iptables
  • 这里因为子shell的原因,他只会给父shell返回执行结果的值echo $?,可以做不了,就直接保存就好了
  • 四、配置完成,以后修改了防火墙规则,只需要执行
iptables-save > /etc/iptables.up.rules
  • 命令将最新的防火墙规则写入文件即可。



  • 配置 client 只能在 Chinaskill20 用户环境下可以免秘钥登录,端口
  • 号为 2222,并且拥有 root 控制权限。
  • 这里需要给ssh一个登录用户,因为root默认是被禁止登录的,所以需要创建一个登录用户,然后这里的2222端口也要添加为ssh服务端口

  • 添加ssh服务端口
echo port 2222 >> /etc/ssh/sshd_config

  • 重启下ssh服务
systemctl restart sshd


  • 当然还要记得配置网卡
  • 网上找了一个标准配置

  • 本机的配置


  • 给ssh创建登录用户,题目要求只能在chinaskill20用户环境下免密钥登录,就需要数字证书验证身份
  • 先创建用户
  • 附带家目录


  • 免密登录


  • 客户端 免密登录用户生成密钥
  • 创建用户

  • 生成公钥和私钥


  • 因为需要用chinaskill20登录后有root权限,就需要root暂时开启远程登陆,因为ssh-copy-id要登录root上传证书




  • 将公钥导入到认证文件



  • 解除注释sshd_config这三条





  • 将允许root登录和密码认证允许空密码登录都注释掉


  • 用私钥去验证身份免密登录


相关文章
|
15天前
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
26 1
|
3月前
|
Ubuntu Linux 网络安全
【计算机网络】SSH 服务安装
【1月更文挑战第10天】【计算机网络】SSH 服务安装
|
1月前
|
缓存 网络协议 数据可视化
WinSCP下载安装并实现远程SSH本地服务器上传文件
WinSCP下载安装并实现远程SSH本地服务器上传文件
|
2月前
|
Shell 网络安全 iOS开发
最好用的SSH工具Royal TSX for mac使用教程
众所周知,在 Windows上我们经常用到的shell工具可能非 xshell莫属了。但是xshell却并没有开发mac 版本,我们只能用其他的工具替代了。 在我用过几个ssh工具之后,我觉得在macOS上最好用的ssh工具客户端必须是 Royal TSX,它和使用xhell的感觉简直一模一样。 Royal TSX是一款功能非常强大适用于 Mac 的远程连接管理工具。兼容多种连接类型,比如:RDP、VNC、基于SSH连接的终端,SFTP/FTP/SCP或基于Web的连接管理,Royal TSX 都可以满足您的要求!
193 0
最好用的SSH工具Royal TSX for mac使用教程
|
3月前
|
网络协议 安全 网络安全
Android Termux安装SSH结合内网穿透实现远程SFTP文件传输
Android Termux安装SSH结合内网穿透实现远程SFTP文件传输
51 0
|
1月前
|
安全 网络安全
码云创建SSH仓库链接:最详细教程
码云创建SSH仓库链接:最详细教程
|
2月前
|
安全 网络协议 Linux
|
2月前
|
SQL 存储 数据安全/隐私保护
|
2月前
|
关系型数据库 网络安全 数据库
通过SSH登录OceanBase数据库需要修改用户密码,然后使用SSH客户端进行远程登录
通过SSH登录OceanBase数据库需要修改用户密码,然后使用SSH客户端进行远程登录
77 6
|
2月前
|
存储 Linux 网络安全
如何在 Linux 中删除 SSL 证书和 SSH 密码?
如何在 Linux 中删除 SSL 证书和 SSH 密码?
85 1
如何在 Linux 中删除 SSL 证书和 SSH 密码?