Articles of ssh

networking上所有机器的无密码ssh

我知道在两台服务器之间允许基于密钥的身份validation的基本方法是使用以下三个步骤: ssh-keygen ssh-copy-id -i remote_host ssh remote_host 使用这种方法时,我需要手动input密码,当我SSH入远程主机,然后做相反的,以允许SSH两种方式。 我遇到的问题是我需要在Azure的同一个networking上的100台服务器才能够无密码双向ssh到对方,并能够再次希望做到这一点。 有没有办法让我为同一networking上的所有机器轻松完成此操作,而无需为每一台机器设置?

SSH同时工作,但是scp和rsync只有一种方法

我一直在使用SCP和rsync在两台服务器之间使用SSH密钥传输一些文件。 SCP和rsync突然从服务器1到服务器2不再工作。它们不给出任何错误或信息。 每当我尝试使用他们,他们只是挂起。 如果我尝试在服务器之间进行SSH连接,它的工作原理非常棒 如果我尝试从服务器2到服务器1的scp或rsync,它工作的很好。 如果我从服务器1尝试它不是。 这就是我想要的。 从服务器1: scp /storage/somefile root@server2:/storage (不起作用) 从服务器2: scp root@server1:/storage/somefile /storage (works) 有没有人有任何想法?

/var/log/auth.log是否未完成未授权访问的症状?

今天我发现/var/log/auth.log文件只有最近一周的logging,而且我怀疑我是通过使用不安全的SSH密码被黑客入侵的,攻击者删除了访问日志以避免被检测到。 以下是日志中的第一行: Jun 26 06:44:58 server CRON[14297]: pam_unix(cron:session): session closed for user root Jun 26 06:47:01 server CRON[14484]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 06:47:02 server CRON[14484]: pam_unix(cron:session): session closed for user root Jun 26 07:17:01 server CRON[14515]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 07:17:01 server CRON[14515]: […]

将另一个用户添加到SSH目标用户组后无法进行SSH

我正在尝试为游戏服务器制作一个Web界面。 我有一个用户/组“游戏服务器”,有游戏文件和configuration(不是一个sudoer)。 而所有人都知道的用户/组“www-data”是针对Web应用程序的。 现在我不幸地看到有人要求或build议将www-data添加到“sudo”组,以允许其他地方修改文件。 出于安全原因,这是非常糟糕的做法 我想启用www-data来修改用户“gameserver”的文件/文件夹内的文件,没有“root”权限。 据我所知,有几种方法可以做到这一点: 将文件/文件夹权限更改为全局读取/写入。 将文件/文件夹组的所有权更改为“www-data”。 将用户“www-data”添加到“gameserver”组中。 前两个将需要更改每个新创build的文件或文件夹的权限或所有权。 因此,最后的方式似乎是最合理的。 但是,执行完毕后: usermod -a -G gameserver www-data 添加用户“万维网数据”组“游戏服务器”,我不能再SSH用户“游戏服务器”。 并得到一个错误: Permission denied (publickey). 这个post似乎有一个类似的问题: 添加用户到组后,SSH损坏pipe道错误 但是并没有真正解决这个问题。 为什么添加其他用户到我的用户组阻止我通过SSH访问我的用户? 我怎样才能解决这个问题? 请注意,“www-data”确实能够写入属于用户“gameserver”的文件。 为了反转效果,我SSH到“根”并执行: gpasswd -d www-data gameserver 要从组“gameserver”中删除用户“www-data” 编辑01: 正如Ryan Babchishin在第一条评论中指出的那样,他正在为他工作。 我试过另一台服务器,它的工作原理。 此问题目前针对OVH服务器。 他们表示,他们正在使用一个自定义的内核来回应之前的问题,我无法使用SystemV命令来启动,停止或重新启动服务。 我现在提交另一张票。 但是仍然不明白这与Linux权限有什么关系。

openssh要求dsa

今天,当我尝试从我的Linux笔记本电脑用SSHlogin到Linux服务器时,我收到错误消息: 警告:远程主机标识已更改! 由于我没有更改机器密钥,我做了一个ssh -v看看会发生什么。 我发现我的OpenSSH客户端(SSH-2.0-OpenSSH_7.2p2)接受“主机密钥algorithm:ecdsa-sha2-nistp256”,而在我的known_hosts中有一个相应的服务器的RSA rsa-key 。 ..)。 唯一可能改变的是OpenSSH版本。 我怎样才能使OpenSSH再次要求RSA主机密钥? PS:错误消息和一些前面的行请求: debug1: expecting SSH2_MSG_KEX_ECDH_REPLY debug1: Server host key: ecdsa-sha2-nistp256 SHA256:k/ADO4oeYIUNdsGBEkKXkggNP5pr3t9QlYSr8GOLSd1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host […]

阻止用户访问文件夹

我有一个拥有80个用户的Centos 7服务器,并且我有许多80个用户可以访问的目录。 不过,我想要一个特定的用户不能访问一个单一的目录,我该怎么做? 我只想阻止一个用户访问特定的目录,保持所有其他用户的权限不变。 我怎样才能做到这一点?

Ping后只能SSH

我有一台运行RHEL 6的虚拟机,我只能在ping之后访问它。 [user@localhost ~]$ ssh remotehost Connection timed out. [user@localhost ~]$ ping remotehost PING remotehost.example.com (10.1.60.93) 56(84) bytes of data. 64 bytes from remotehost.example.com (10.1.60.93): icmp_seq=1 ttl=61 time=1.65 ms ^C — remotehost.example.com ping statistics — 1 packets transmitted, 1 received, 0% packet loss, time 622ms rtt min/avg/max/mdev = 1.656/1.656/1.656/0.000 ms [user@localhost ~]$ ssh remotehost user@remotehost's […]

可能ssh进入服务器,而不使用-i标志键?

我有3个EC2实例,它们都使用相同的私钥。 我正在这些节点之间build立一个hadoop集群,他们需要无密码input这个工作。 我怎样才能使用这个私钥轻松ssh进入无钥匙进入服务器? 我唯一拥有的是.pem文件。 我已经将文件扫描到主服务器上。

无法使sshd + pam + ldap正常工作(AuthorizedKeysCommand?)

我做了什么: 安装了libpam-ldapd 设置/etc/ldap/ldap.conf 设置/etc/ssh/ldap-keys.sh作为root:root 0755 ,确认它有效( /etc/ssh/ldap_keys.sh amadan从LDAP返回我的公钥)。 设置/etc/nsswitch.conf和shadow现在说compat ldap ,新行sudoers有ldap 。 设置/etc/ssh/sshd_config : AuthorizedKeysCommand指向上面的文件, AuthorizedKeysCommandUser为新创build的专用用户 设置/usr/share/pam-configs/mkhomedir ; 运行pam-auth-update 。 目前的情况是,当我尝试login时, AuthorizedKeysCommand ( /etc/ssh/ldap-keys.sh )永远不会运行。 我也不知道我的configuration的其余部分是否正确,但是我不能说sshd总是报告“无效的用户”: Oct 17 17:22:59 xxx sshd[86244]: Invalid user amadan from yyy Oct 17 17:22:59 xxx sshd[86244]: input_userauth_request: invalid user amadan [preauth] Oct 17 17:23:01 xxx sshd[86244]: Connection closed by yyy […]

以root身份启动SSH连接的任何缺点?

我知道允许root用户通过SSH访问服务器是一个坏主意(即允许通过SSH以root身份login)。 但是等式的另一端呢? 从我以root身份login的客户端计算机启动SSH连接有什么缺点吗? 所以,像这样的: root@localhost$ ssh [email protected] 这会对客户机(本例中为localhost)有任何安全隐患? 更多背景:在家庭networking中的本地机器上(无法通过互联网访问),我有一个小型服务,从机器本身收集信息,以及通过SSH从远程服务器收集一些有限的信息。 由于在本地机器上收集的信息,服务本身以root身份运行。 在远程服务器上,它使用非root用户login,只访问它设置收集的信息。 现在我想知道,如果服务在build立到远程服务器的SSH连接(例如通过runuser)时放弃root权限,或者根本没有关系,本地服务器也可能启动在本地机器上以root身份连接SSH连接。 谢谢!