linux下如何开通ssh,允许远程登录?

嘿,兄弟,我在Linux系统上进行SSH远程登录时,确实遇到了很多问题。
我记得这件事发生在 2 01 8 年。
我在公司的 Red Hat 服务器上执行了此操作,它几乎让我崩溃。

首先,我必须使用 root 权限登录系统,这很好,因为我当时是系统管理员。
然后,我需要检查是否安装了 SSH 服务器。
我在终端输入命令:rpm-qa | grep openssh-server,发现不存在。
这是不可能的。
我需要快速安装它。

安装过程相当顺利。
我使用 rpm -ivh openssh-server-xxx 等命令直接从 CD 安装它。
然后,我开始配置SSH服务。

编辑sshd_config文件,这一步需要小心,因为我一开始是用vi编辑的,不小心配置错了。
幸好当时我还有备份。
我将 PermitRootLogin 更改为 yes 并重新启动 SSH 服务。
这次,我使用了netstat -a | grep ssh 看看,嘿嘿,服务启动成功了。

接下来,我需要测试远程登录。
我在 Windows 上用 PuTTY 尝试了一下,输入 Linux 服务器的 IP 和端口,结果成功了。
然后,我也在Linux服务器上尝试了一下,直接在终端输入ssh localhost。
这次没问题了。

最后,我必须检查防火墙设置。
我用的是iptables。
我尝试停止防火墙然后重新连接,但仍然不起作用。
然后我查了一下,发现需要添加一条规则,允许连接TCP 2 2 端口。
我添加了规则,问题就解决了。

整个过程中,我检查了很多日志文件,比如/var/log/secure,对我帮助很大。
现在回想起来,虽然当时有点不知所措,但我学到了很多东西。

如何实现Linux用户的远程登录限制 /etc/security/access.conf配置

说实话,当我第一次想到这个 Linux 远程登录限制时,我感到非常困惑。
当时我刚刚接手服务器,客户端要求锁定root,不允许远程登录。
我想知道如何实现它,但我深入研究了 access.conf 并准备加入自己。

启用PAM模块这一步并不难,但是很容易忽略细节。
我记得将语句 accountrequiredpam_access.so 添加到 /etc/pam.d/sshd 中。
我不得不使用像 sudo v 这样的交互式编辑器。
你不能直接用 echo 添加它,否则会出现格式错误。
添加完成后,必须重新启动SSH服务。
我使用systemctl sshd restart,但是一些较旧的系统可能需要重新启动sshd服务。
重新启动后 sshd -V 或 ps aux |最好使用 grep sshd 来确保 pam_access.so 实际上已加载到进程中,否则您的工作将是徒劳的。

access.conf 配置是主要配置,也是最容易遇到麻烦的地方。
让我告诉你我遇到的一个陷阱:我在顶部写了规则 +:all:all ,认为默认情况下是允许的,然后在下面写了拒绝规则。
事实证明它根本不起作用。
后来发现PM是按顺序匹配的,第一场比赛就停了。
因此,在编写规则时,首先应该写最准确的规则,例如限制某些用户从某些IP进入。
应该首先制定这样的规则。
为了进行测试,我首先输入 +:@admin:1 9 2 .1 6 8 .1 .0/2 4 即使最后加上-:root:ALL,由于顺序匹配,root仍然可以远程登录。

另一个需要注意的是日志。
我有一个客户的服务器突然无法远程登录,我很担心。
后来,我让他检查/var/log/secure(CentOS/RHEL系统),果然看到了“Password success for root from ...”日志。
在这条规则之前 -:all:everything 都被添加了,但他忘记给自己留一个后门。
因此,请确保在配置时留下本地可访问的帐户,或者按照您所说的单独允许本地 IP(例如 1 2 7 .0.0.1 )。
我还遇到了规则中的语法错误,例如IP网络部分之后,这使得整个规则不正确,这真的很烦人。
新的我建议初学者从简单的规则开始,例如完全拒绝 root 远程登录 (-:root:ALL) 或允许特定组从互联网登录 (+:@dev:1 9 2 .1 6 8 .1 .0/2 4 )。
每次添加规则时,请重新启动 SSH 服务以测试并使用不同的用户和 IP 组合登录,以确保规则有效。
一个小技巧是使用 ssh user@ip 登录浏览器。
如果直接报错,一般是access.conf的问题;如果可以导航到密码输入界面但失败,则可能是其他 PAM 模块的问题。

access.conf 实际上非常灵活,可以以多种不同的方式使用。
例如,我之前见过使用正则表达式根据用户属性(例如是否属于特定组)来限制用户名或控件的配置。
但这样做非常复杂,容易出现问题,一般不推荐。
总之,首先关注基本规则,逐渐你就会明白如何根据你的需求组合规则。

RockyLinux9 安装后ssh无法远程密码登录解决方法

嗯...RockyLinux9 ...这个系统...SSH...为什么...无法登录?
远程...登录密码...不起作用...
后来我意识到...这可能是...Root用户...默认...不允许...使用密码...登录...
你必须更改...配置文件...
它.../etc/ssh/sshd_config...这个地方...
原来...有这么一行...PermitRootLogin阻止了密码...
看到...这个...评论...这个东西...
你必须更改它...到PermitRootLogin 是...
保存...退出...
然后...重新启动...SSH服务...
命令是...systemctl重新启动sshd...
检查服务...是否已启动...检查状态...
客户端...重试...ssh root@那个IP...输入密码...
如果...我可以进入...那就太好了...
嘿...这件事...解决了...
但是...它很安全...你还是得...注意...
密钥认证...也许更好...
就...创建密钥...复制它...
然后...配置文件...PermitRootLogin 无密码...
然后...重启...服务...
防火墙...还要检查...端口 2 2 ...是否打开...
SELinux...也许还...检查一下...
哎呀...这个问题...就这些...