我正在运行一个 tinycore 机器,在将代码推送到 github 之前,我将代码存储在该机器上。这也是唯一一台在家里转发端口 22 的机器,因此我必须从这台机器上进行推送,因为 github 使用 ssh 作为执行推送和拉取的协议。我今天试图进行推送,但我收到了权限被拒绝(Publickey)错误,所以我没有阅读此页面所以我创建了一个 ssh 配置文件,~tc/.ssh/config内容如下:
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile /home/tc/.ssh/id_dsa.pub
Run Code Online (Sandbox Code Playgroud)
在尝试重新生成我的 dsa 密钥对后,我仍然遇到问题。
基本上,我看到的是在我运行后重新生成我的 dsa 密钥对之后
ssh-keygen -t dsa
然后我确认覆盖,按三次回车使用:默认位置/home/tc/.ssh/id_dsa(和 id_dsa.pub 在同一目录中),并且没有密码。我比尝试 ssh 到 github 来测试使用的连接ssh git@github.com并得到错误:
Permission denied (publickey).
所以我想这是因为我没有将我新生成的公钥添加到 github。因此,我获取公钥并将输出复制到我在 github 上的设置中,现在每次我尝试通过 ssh 连接到 github 时,它都会要求我输入密码,即使我从未指定过密码并且在查看之前它也没有询问我文件。此外,rw 的权限似乎仅适用于用户 tc。
我已经让密钥(证书)正常工作,但实际上,这更像是“方便”的事情。(我喜欢)。但就安全性而言,有人仍然可以使用密码登录。禁用密码并只允许证书登录的好方法是什么?我不想只选择一个随机密码(这可能也有效),但我想完全禁用密码。
想法?
如果我通过 SSH 连接到服务器,监控网络的人可以看到哪些网络流量?例如,如果我在工作并通过 SSH 连接到服务器,网络管理员可以看到什么?他们是否只看到我连接的 IP 和端口,但所有数据本身都是加密的?如果我连接到一台服务器,然后通过 SSH 从该服务器连接到另一台服务器 - 流量是否可见,或者它看起来像第一台服务器的数据?
我想确保我是否连接到服务器,因为任何外部方都可以看到很少的流量。有什么办法可以隐藏我正在连接的 IP 吗?
更新 服务器 1 和服务器 2 都在我当前所在的网络的外部。这是否会改变我网络上的某个人可以看到从服务器 1 传出的内容?
for f in `ssh $SSHCRED "~/file-list.sh"`
do
rsync --progress --times --partial --append --rsh=ssh -r -h --remove-sent-files $SSHCRED:$f $OUTDIR
done
Run Code Online (Sandbox Code Playgroud)
这就是我今天所做的。
我想通过将输出ssh $SSHCRED "~/file-list.sh"直接发送到 rsync来做到这一点。那应该更快,而且我可以轻松地中止一个 rsync 操作。
但是我至少看到了一个问题:远程脚本生成了一个带有绝对路径的文件列表。为了让 rsync 正常工作,我想我需要在每个路径之前添加 SSH 凭据,如下所示:
user@host:/path/to/file1
user@host:/path/to/file2
user@host:/path/to/file3
Run Code Online (Sandbox Code Playgroud)
这可能吗?
在服务器之间移动文件的脚本最友好的方法是什么?
我知道的唯一方法是 SSH 和 rsync,但如果有其他标准,我不想跳入它们。
编辑:
有问题的服务器在 Red Hat Enterprise 和 Centos5 上运行
我想拥有自己的远程服务器,并通过 SSH 连接到它。
但是我想通过多台PC(即许多不同的IP)来做到这一点,您对此有什么建议/安全解决方案吗?
我正在尝试在 OpenITC VPS 上的 CentOS 5.5 上设置 SSH 登录。
我应该说这似乎没有安装 SELinux,因为 sestatus 之类的命令不起作用。
我目前有两个用户,root 和 M。我不确定将 authorised_keys 文件放在哪里,所以它在 /root/.ssh/ 和 /home/M/.ssh 中,root 是前者的所有者(和文件),M 是后者(和文件)的所有者。文件夹权限为 700,文件为 600。
当我尝试使用 Putty Link (plink -v xxxx) 登录时,无论是尝试以 root 身份还是 MI 身份登录,都会得到以下信息:
Looking up host "x"
Connecting to x port 22
Server version: SSH-2.0-OpenSSH_4.3
We claim version: SSH-2.0-PuTTY_Release_0.60
Using SSH protocol version 2
Doing Diffie-Hellman group exchange
Doing Diffie-Hellman key exchange with hash SHA-1
Host key fingerprint is:
x
Initialised AES-256 SDCTR client->server encryption
Initialised …Run Code Online (Sandbox Code Playgroud) 我处于一种情况,我无法对 ssh 进行无密码登录,并且 ssh 服务器无法通过默认端口以外的任何其他端口运行。所以,我选择使用 stunnel 来隧道 ssh。就我个人的电脑我使用在客户端模式,安全通道,并用它来登录到服务器,像这样:ssh -p 8888 user@localhost。问题是 ssl 客户端证书是公开的,因此任何人都可以轻松设置到我的服务器的 ssl 隧道。如果有人查询https://myserver.com它表明 openssh 2.0 正在 ssl 端口上运行。所以它已经成为一种最简单的入侵方式,比在非默认端口上运行 ssl 服务器要简单得多。所以,我想知道是否可以将 ssl 客户端证书设为私有,这样就不会向在我的服务器上进行 https 查询的任何人提供它。而且我应该能够像 ssl 私钥一样保密。
我们的 Linux 服务器有点像噩梦。
Somehack 正在使用我们的服务器发送垃圾邮件。我清理了所有输入,有验证码图像,更改密码等,但仍然如此。
不知何故,他们继续这样做。每小时收到数千封电子邮件。我们每天有 3000 封电子邮件限制,因此在我清理队列后几乎立即阻止了我们的 SMTP。问题是,所有那些不断进来的电子邮件都以“未处理”的形式存储在某处,这将我们的磁盘空间增加到了极限,然后我什至看不到网站。我们的服务器是典型的 Linux,使用 Plesk 9.3 作为面板。在所有这些垃圾邮件中,他们将 root@ip-188-121-62-27.ip-secureserver.net 显示为发件人,我猜这是默认的系统地址。
我迫切需要阻止这种情况,我只是不知道该怎么做。有没有办法阻止该电子邮件地址发送电子邮件?通过 SSH 还是在 Plesk 中?
这是其中 1 封垃圾邮件的标题:
Received: (qmail 20441 invoked by uid 48); 9 Mar 2012 09:29:55 -0200
Date: 9 Mar 2012 09:29:55 -0200
Message-ID: <20120309112955.20439.qmail@ip-188-121-62-27.ip.secureserver.net>
To: harsadeyes@aol.com
Subject: Viaqra 0,89
From: "Reuben Velasquez" <reuben_velasquez@vigrxplus-ue.com>
MIME-Version: 1.0
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Run Code Online (Sandbox Code Playgroud) 我在 /home/myuser/.ssh/privateKey 中有一个私钥
我在连接到 ssh 服务器时遇到问题,因为我总是得到:
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
我试图调试问题,我发现 ssh 正在读取错误的文件,看看输出:
[damiano@Damiano-PC .ssh]$ ssh -v root@vps1
OpenSSH_5.8p2, OpenSSL 1.0.0g-fips 18 Jan 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for vps1
debug1: Applying options for *
debug1: Connecting to 111.111.111.111 [111.111.111.111] port 2000.
debug1: Connection established.
debug1: identity file /home/damiano/.ssh/id_rsa type -1
debug1: identity file /home/damiano/.ssh/id_rsa-cert type -1
debug1: identity file /home/damiano/.ssh/id_dsa type -1
debug1: identity file /home/damiano/.ssh/id_dsa-cert type -1
debug1: Remote protocol version 2.0, remote software version …Run Code Online (Sandbox Code Playgroud) ssh ×10
linux ×3
rsync ×2
security ×2
centos5 ×1
certificate ×1
dsa ×1
email ×1
files ×1
migration ×1
passphrase ×1
password ×1
private-key ×1
public-key ×1
ssh-keys ×1
ssh-tunnel ×1
ssl ×1
stunnel ×1
traffic ×1