赞
踩
目录
备注:防火墙和selinux可能对ssh连接存在限制,但是我在操作的时候并没对我照成影响
1.首先需要安装SSH服务器,在ubuntu终端输入以下指令
sudo apt-get install -y ssh
2.启用SSH服务,输入以下指令
service ssh start
3.查看SSH服务运行状态
service ssh status
4.进行ssh连接(这里也要使用sudo权限)
要进行连接的主机出现权限报错有好几个原因:
1。网络连通性有问题,要进行连接首先要可以ping通
2.本身主机给的权限不够,不能进行连接(要sudo)
3.启动报错。直接查看日志看哪里配置出问题
4..被连接服务器配置限制了ssh:
①是否加入了黑白名单(白名单的优先级高于黑名单)。 具体看x17安全加固
- /etc/hosts.allow #白名单的路径
- /etc/hosts.deny #黑名单的路径
②root用户被限制连接不上
- /etc/ssh/sshd_config #ssh的主配置文件路径
- #将PermitRootLogin no 配置成 yes (可用/进行查找 n是下一个)
4.如果修改完配置文件一定要重启才生效
systemctl restart sshd
- /usr/sbin/sestatus -v #如果SELinux status参数为enabled即为开启状态
-
- getenforce #也可以用这个命令检查
-
- sestatus #查看状态
ssh_config是SSH客户端的配置文件,用于配置SSH客户端的行为和选项,例如指定默认的身份验证方法、指定默认的密钥文件等。
sshd_config是SSH服务器的配置文件,用于配置SSH服务器的行为和选项,例如指定允许的身份验证方法、指定监听的端口号等。
路径:/etc/ssh/sshd_config
- 在配置文件中找到
- #ClientAliveInterval 0
- #ClientAliveCountMax 3
-
- 修改为
- ClientAliveInterval 60
- #ClientAliveInterval:指定服务器向客户端检测是否活动状态的间隔时间,默认为0,将它修改为60,就是每60秒检测一次。
-
- ClientAliveCountMax 5
- #ClientAliveCountMax:指定服务器向客户端检测无响应最大次数,达到次数断开连接,默认为3。
然后重启服务
- systemctl restart sshd.service
- #重启ssh服务,使新的配置文件生效
-
- systemctl status sshd.service
- #检查当前ssh服务状态
一样的配置,将Client改成Server
- ssh-keygen -R "远程服务器ip地址"
- #清除关于远程服务器的公钥信息
①报错信息里面就有提示解决方法,就是告诉你要重置公钥。
②在用户/.ssh/ 目录下就只有authorized_keys文件,没有known_hosts文件。
③authorized_keys记录了其他主机用于连接本机服务器的公钥,如果主机A的公钥在本机的authorized_keys
文件中,则主机A可免密登陆本机服务器。
④known_hosts记录了本机访问过的主机的公钥。下次访问对应主机时,OpenSSH会核对公钥,不同则发出警告,避免受到DNS Hijack之类的攻击
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。