在我开始目前的工作(在一家小企业)之前,我的办公室在网络上没有防火墙,几乎没有任何备份。现在,我已经以专门的系统管理员/单人 IT 部门的身份登录,我一直在尽我所能来改变这一点。在向我的老板解释了我们有多脆弱之后,他允许我设置一些备份服务器,其中一台在他家。
现在,我正在尝试设置所有内容,以便我可以自动执行每日备份。我打算通过 ssh 使用 rsync 来做到这一点。出于安全和自动化的考虑,我计划禁用 ssh 密码登录并仅使用 rsa 密钥验证。好吧,如果我设置了 rsa 密码,那么我仍然需要输入密码,这是一个问题。
没有 rsa 密码是否会显着降低安全性?我是公司中唯一对这种事情有任何线索的人,所以我不太担心有人在我的机器上调用终端(无论如何,当我 AFK 时它总是被锁定的) ) 并通过 ssh 连接到其中一台备份服务器并造成任何损坏。我对系统管理领域仍然非常非常陌生,这是我第一次做这样的事情,我不想在安全设置中留下任何漏洞。
这里有问题的计算机正在运行 Ubuntu 10.10、SME Server 和 OSX 10.6,如果这有什么不同的话。
我正在寻找一个 PowerShell cmdlet,它可以提供与 Linux Top 应用程序类似的功能。在某个给定的时间间隔刷新并使用 CPU % util 显示进程列表的东西。
我见过在循环中列出 CPU % 利用率的脚本,但是像 top 这样的东西会更方便,因为我们已经设置了 SSH/Powershell 访问权限以进行管理(我仍然更喜欢腻子外壳!)
请问如何在 Mac OSX Mountain Lion 上通过命令行重启 SSH 服务?
使用ps aux | grep 'ssh',我能够推断出该过程最有可能/usr/sbin/sshd。
从这里我搜索了sshd 文档以查找对“重新启动”的引用,但没有找到。
我不知道我的下一步应该是什么。
我正在尝试使用 Putty 或 SSH 将本地文件上传到服务器,但没有在那里上传。
是否有任何直接方法可以在不使用 FTP 等的情况下从 Linux 终端将文件从本地上传到服务器?
我尝试将文件从 linux (ubuntu) 机器复制到安装在 mac 上的外部硬盘驱动器,但收到一条错误消息:
scp: ambiguous target
Run Code Online (Sandbox Code Playgroud)
我所做的是,我在 mac 上,通过 ssh 连接到文件所在的 linux 机器。然后使用以下命令:
scp fileToCopy myMacUser@myMacMachine:/Volumes/MyExternalDrive/targetDirectory
Run Code Online (Sandbox Code Playgroud)
我做错了什么 ?在这种情况下使用的好命令是什么?
我正在运行 Mac OS X,似乎在通过 SSH 连接到多台机器后,使用身份文件,我的“ssh-agent”建立了很多身份/密钥,然后有时向远程机器提供太多,导致他们在连接之前踢我:
从 10.12.10.16 收到断开连接:2:cwd 的身份验证失败太多
很明显发生了什么,这个页面更详细地讨论了它:
SSH 服务器只允许您尝试进行一定次数的身份验证。每个失败的密码尝试、每个失败的公钥/身份提供等,都会占用这些尝试之一。如果您的代理中有很多 SSH 密钥,您可能会发现 SSH 服务器可能会在允许您尝试密码身份验证之前将您踢出去。如果是这种情况,有几种不同的解决方法。
重新启动会清除代理,然后一切正常。我还可以将此行添加到我的.ssh/config文件中以强制它使用密码身份验证:
PreferredAuthentications keyboard-interactive,password
Run Code Online (Sandbox Code Playgroud)
无论如何,我在我引用的页面上看到了关于从代理中删除密钥的说明,但我不确定这是否适用于 Mac,因为它们似乎在重新启动后被清除。
是否有一种简单的方法可以清除“ssh-agent”中的所有密钥(与重新启动时发生的情况相同)?
我正在使用 git bash 并使用 ssh-keygen 设置 ssh 密钥,每次我用 repo git 做某事时都会问我/c/Users/jankiewj/.ssh/id_rsa. 有没有办法禁用该密码。
编辑: 我编辑了原始标题(删除了 Windows),因为我刚刚在我的工作笔记本电脑上使用了全新安装的 Ubuntu,当 ssh 密钥有密码时,它总是要求它,解决这个问题的解决方案是一样的。这可能在同样是 Unix 的 MacOSX 上工作相同,并使用相同的基本工具。
如果我想通过 scp 向服务器发送一些东西:
$ scp file server:
_____ _____ _____
$
Run Code Online (Sandbox Code Playgroud)
,然后打印三行并且不复制文件。但是我可以毫无问题地通过 ssh 连接到服务器:
$ ssh server
Run Code Online (Sandbox Code Playgroud)
如何使 scp 工作?
我曾经ssh -L 10002:192.168.0.30:10002 192.168.1.135建立端口转发,但现在我需要删除它。
我该怎么做呢?
有没有一种方便的方法来确保来自给定用户(即我)的所有登录都使用相同的 ssh-agent?我在大部分时间编写了一个脚本来完成这项工作,但我一直怀疑有某种方法可以做到这一点,而我刚刚错过了。此外,从那时起,计算技术取得了惊人的进步,例如这个网站。
所以这里的目标是
ssh-agent运行,则启动一个,导出并ssh-add调用环境变量。当有问题的盒子用作ssh进入第三个盒子时的中继点时,此功能特别有价值。在这种情况下,它避免了每次 ssh 时都必须输入私钥的密码,然后再想,例如,git push做某事。
下面给出的脚本在很大程度上可靠地完成了这项工作,尽管它最近在 X 崩溃时出现了问题,然后我开始了另一个图形会话。在这种情况下,可能还有其他的扭曲。
这是我的坏就是好脚本。我从我的.bashrc.
# ssh-agent-procure.bash
# v0.6.4
# ensures that all shells sourcing this file in profile/rc scripts use the same ssh-agent.
# copyright me, now; licensed under the DWTFYWT license.
mkdir -p "$HOME/etc/ssh";
function ssh-procure-launch-agent {
eval `ssh-agent -s -a ~/etc/ssh/ssh-agent-socket`;
ssh-add;
}
if [ ! $SSH_AGENT_PID ]; then
if [ -e ~/etc/ssh/ssh-agent-socket ] ; …Run Code Online (Sandbox Code Playgroud)