Articles of ssh

在团队内pipe理AWS SSH .pem文件的最佳实践

我们正在使用VPC在EC2上运行许多环境。 在每个VPC中,我们都configuration了一个加固的堡垒主机,用作networking中的初始SSH入口点。 要访问我们的专用VPC子网内的主机,用户首先SSH到堡垒主机,然后SSH到子网内的其他主机。 为此,用户在进行初始SSH连接时转发SSH密钥(从AWS下载为.pem文件)。 例如: ssh -A [email protected] ssh [email protected] 堡垒主机的全部目的是允许团队成员安全地访问我们的环境,只要他们有两个.pem键。 团队成员是信任的,在一个单一的组织内。 我的问题是:我们在团队中pipe理和分发.pem文件的最佳方式是什么? 团队成员可以find他们想要连接到的环境的正确.pem文件 .pem文件的存储是安全的 我们可以明确授权个人用户访问密钥 任何build议最受欢迎。

Rsync通过SSH:“错误:模块是只读”突然出现

我曾经用rsync / ssh把我的共享主机内容备份到我个人的Synology NAS(212j),而且效果很好。 有关信息,我使用无密码的ssh连接。 3天前,我更新了我的NAS软件,自从(或者至less我相信那是因为那个),备份将不再起作用。 我在主机上得到以下错误: rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32) ERROR: module is read only ..我不明白。 除了在源和目的地都知道可以和rsync或者ssh有关的东西之外没有任何改变,我确实检查了一些东西,看上去都没问题: 我仍然可以通过ssh从主机连接到我的NAS与好用户,所以像密钥ssh的东西没有改变。 我也有正确的NAS上的文件权限(我检查,也尝试创build文件,目录,与rsync通过ssh使用的用户)。 我在这里和那里看到,错误意味着我必须确保我的rsyncd.conf有正确的read only = no ,但据我所知,我从来没有使用过rsyncd ,也没有为它configuration过任何东西,直到现在它像一个魅力工作.. 我使用以下命令来执行备份: rsync -ab –recursive \ –files-from="$FILES_FROM" \ –backup-dir=backup_$SUFFIX \ –delete \ –filter='protect backup_*' \ $WDIRECTORY/ \ remote_backup:$REMOTE_BACKUP/ 所以我卡住了,真的不知道发生了什么事。 编辑: 正如在评论中所build议的,我也尝试传递命令ssh(但不是从一个ssh会话内),工作正常,也尝试了一个单一的rsync命令,没有工作,失败就像完整的备份命令。 […]

很多失败的SSHlogin尝试 – 我应该担心吗?

可能重复: 值得努力阻止失败的login尝试 每天有几百次闯入企图是否正常? 我在不同的数据中心pipe理了许多完全不同的根服务器,而且我注意到其中大多数失败的SSHlogin失败次数相当多。 以下是过去三天的快照: 没有固定的模式,但是通常我每天logging几百次。 对我来说,这似乎是随机的尝试进入国外服务器的僵尸networking。 我使用相当安全的密码,但仍然:我应该关心或做这件事? 最好的可能是更改SSH端口,但这在所有情况下都是不可能的。 无论如何, 这是正常的吗? 注意:PublicKeylogin如预期的那样。

保护Linux服务器:iptables vs fail2ban

我想select社区的大脑关于Linux服务器安全,特别是暴力攻击和使用fail2ban vs定制iptables 。 这里有一些类似的问题,但是没有一个能够让我满意。 总之,我试图确定最好的解决scheme,以保护暴露在互联网(运行通常的服务,SSH,网页,邮件)的Linux服务器,从暴力攻击。 我有一个体面的服务器安全处理,即通过不允许root或密码login,更改默认端口,确保软件是最新的,检查日志文件,只允许某些主机访问服务器和利用安全性lockingssh审计工具,如Lynis ( https://cisofy.com/lynis/ ),一般安全合规性,所以这个问题不一定就是这样,尽pipeinput和build议总是受欢迎的 。 我的问题是我应该使用哪种解决scheme(fail2ban或iptables),我应该如何configuration它,还是应该使用两者的组合来抵御暴力攻击? 关于这个主题有一个有趣的回应( Denyhosts vs fail2ban vs iptables-防止暴力login的最好方法? )。 对我个人而言,最有趣的答案是( https://serverfault.com/a/128964),iptables 路由发生在内核中 ,而fail2ban则使用用户模式工具来parsing日志文件。 Fail2ban当然使用iptables,但是它仍然需要parsing日志文件并匹配模式,直到执行一个动作。 那么使用iptables并使用限速 ( https://www.rackaid.com/blog/how-to-block-ssh-brute-force-attacks/ )在一段时间内从IP上删除请求的时间,在特定的时间内连接尝试过多,而不pipe它尝试连接的协议是什么? 如果是这样,那么有一些有趣的想法使用drop vs reject这些包( http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject ),对此有什么想法? Fail2ban允许自定义configuration的forms,能够编写自定义“ 规则 ”的服务,可能无法在默认configuration中解决。 它很容易安装和设置,function强大,但如果我试图实现的所有服务/协议超过一个x数量的两个失败的访问尝试是“ 阻止 ”从服务器的IP是一个矫枉过正的时间? 这里的目标是打开每日logging报告,而不必滚动浏览尝试失败的连接到服务器的页面。 感谢您花时间。

自动设置SSH用户

我有一个很less连接到的ssh服务器,它需要使用不同的用户login到我的系统。 当我执行ssh example.com ssh会自动使用我的默认用户[email protected]进行连接。 这是行不通的,因为服务器期望我与一个特殊用户[email protected]连接。 此外,该服务器有一个强大的阻止和禁止政策。 所以当我多次使用错误的密码的时候,我会自动封锁半个小时甚至被禁止。 因为我很less连接,所以我会忘记我需要用一个特殊的用户来连接,如果我被阻塞了半个小时,甚至被禁止,这可能是非常烦人的。 我正在寻找的是一种configuration我的本地SSH客户端的方式,并告诉它: “当我连接到example.com,我希望你自动连接用户xyz12345,而不是我的当前用户。 是这样的可能吗?

最好的SSH程序的Windows?

我知道腻子。 我目前使用rxvt(通过Cygwin)。 那里有更多的“集成”terminal程序的Windows? 例如更接近KDE的kconsole的地方 – 我可以在同一个窗口中将多个shell全部选中。 等等

你怎么能防止在Linux上的root密码更改?

我正在build立一个服务器,其他人将通过ssh访问sudo。 他们可以根据需要安装并进行更改,但是我仍然需要pipe理服务器,安装补丁和软件更新等。 我想知道如果我保持根密码,以便我可以随时做我需要的,我可以以某种方式禁用与sudo的人可以用sudo来改变它。

docker集装箱内防止叉子炸弹

我目前正在为我称为sandbox用户限制进程数量。 我在/etc/security/limits.confconfiguration了进程限制,如下所示: sandbox hard nproc 100 但是,如果我想连接到容器作为sandbox用户,ssh返回: shell request failed on channel 0 所以我以root身份login,并检查sandbox用户正在运行多less个进程,但小于5。 那么有什么办法可以阻止我通过SSHlogin? 没有设置限制ssh sandboxlogin用户工作正常。 或者有没有其他办法来防止叉炸弹袭击?

自动重新连接TCP隧道

在两台机器之间有一个不可靠的networking连接:有时候活动的TCP连接因为我无法控制的原因而掉线。 我想在两台机器之间build立一个可靠的TCP连接 。 如果networking是可靠的,我只要运行ssh -L 1234:localhost:1234 remotehost ,服务器在远程主机上的端口1234上侦听,并将客户端指向localhost:1234 。 但是,如果SSH连接死亡,转发的连接也会死亡。 如何安排自动恢复客户端和服务器之间的连接? 非解决scheme: 这不适用于交互式应用程序,因此屏幕不适用。 这不仅仅是自动重新连接SSH隧道。 我想继续使用相同的隧道TCP连接,而不是启动一个新的连接。 原则上,一个虚拟专用网将会诀窍。 但是,当我只想要一个TCP连接时,似乎有点过分,我想要一个解决scheme,即使我没有任何一方的root权限。 我对一个叫做“ rocks ”的程序有点模糊的记忆,但是它似乎已经从networking上掉下来了。 我主要对Linux感兴趣(尽pipe我希望这个级别的程序可以移植到其他unices),但是如果你知道QNX和VMS之间的程序,那就更好了。

当闲置一段时间后,SSH会冻结

从Ubuntu桌面x64 14.04 ssh客户端连接到Ubuntu服务器14.04 x64 Microsoft Azure上的SSH服务器。 不幸的是,当它连接并闲置一段时间时, 连接冻结但不断开。 我已经尝试在我的服务器的/etc/ssh/sshd_config设置这些variables: ClientAliveInterval 30 TCPKeepAlive yes ClientAliveCountMax 99999