我已经有一台 Ubuntu 8.04 服务器在 Internet 上运行了几天......我为 FTP 和 SSH 打开了端口 21 和 22......所有其他端口都关闭了。
我跑了
netstat
Run Code Online (Sandbox Code Playgroud)
并找到了这个
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp6 0 68 10.7.1.71%134645824:ssh 125.211.221.145%8:47777 ESTABLISHED
Run Code Online (Sandbox Code Playgroud)
看起来好像 125.211.221.145 已经建立了到服务器的 SSH 连接......并且正在发送数据包......有人可以在不进行身份验证的情况下建立 SSH 连接吗?
我对地址进行了反向 DNS 查找……根据此资源,它似乎来自中国……
http://www.ipaddresser.com/
Run Code Online (Sandbox Code Playgroud)
我认为大多数服务器一直在抵御这样的东西,但是有人坐在这样的端口上是不是很不寻常?有没有办法在服务器级别阻止某些 IP?
服务器位于强大的 Cisco 防火墙后面..
我需要能够从远程站点访问我的服务器(Ubuntu 8.04 LTS),但我不想担心密码复杂性。因此,我想要求使用 SSH 密钥而不是名称/密码进行登录。但是,我仍然有很多关于安全性的知识需要学习,并且在我尝试设置它时已经严重破坏了测试盒,我敏锐地意识到在尝试完成此操作时可能会搞砸自己。所以我有第二个目标:我想要求某些 IP 范围(例如 10.0.0.0/8)可以使用名称/密码登录,但其他所有人都必须使用 SSH 密钥登录。
我怎样才能同时满足这两个目标?
这里已经存在一个非常相似的问题,但我无法弄清楚如何从这些信息中得到我想要的。
当前策略:通读 PAM 文档(pam_access 看起来很有希望)并查看 /etc/ssh/sshd_config.conf 。
编辑:或者,有没有办法指定某些用户必须使用 SSH 密钥进行身份验证,而其他用户可以使用名称/密码进行身份验证?
当前有效的解决方案:
# 全局拒绝密码登录,只允许SSH-key登录。
密码认证 否
# 但允许来自 LAN 的连接使用密码。
匹配地址 192.168.*.*
密码认证是
匹配地址块也可以用作匹配用户块,回答我的第二个问题。现在,我只是将解析 CIDR 地址的失败归结为我的安装怪癖,并决定在不久后转到 Ubuntu 10.04 时再试一次。事实证明 PAM 不是必需的。
我通过 ssh 进入服务器而不是开始一项工作(例如 rsync),然后我只想能够从服务器注销并让工作顺利进行。但是,如果我只是这样做,rsync ... &我认为它仍然以某种方式连接到 tty,并且当注销时 tty 消失时,工作就会终止。是否有任何(简单)方法可以将进程与 tty 断开连接,以便能够在不终止进程的情况下注销?
如何创建一个新用户,然后通过 SSH 进入该用户下的框?
我跑了:
useradd marco -d /home/marco -p WuUfhRdt4B
Run Code Online (Sandbox Code Playgroud)
然后我添加到/etc/ssh/sshd_config:
AllowUsers root marco
Run Code Online (Sandbox Code Playgroud)
然后重启ssh:
/etc/init.d/ssh restart
Run Code Online (Sandbox Code Playgroud)
我无法登录。我错过了什么?
** 运行 Debian。
完成初学者问题...
假设我可以通过 SSH 访问我的网站。而且,我有一个文件:
mywebsite.com/foo/my_script.php
如何使用 SSH 运行 my_script.php?
我想在我们的一些服务器上设置 pam_ldap 以便我们可以集中管理谁有权访问哪个服务器,并且如果有人离开公司,则可以轻松撤销访问权限。
我已经做了一些研究并得到了这个工作。万岁!
但是,我还希望能够使用公钥-私钥登录 - 即允许用户将他们的公钥存储在 LDAP 目录中,并且也可以使用这些登录。
我找不到任何关于能够做到这一点的文档,但我也找不到任何不应该这样做的原因。有没有办法做到这一点,或者是否有一些根本原因使其不起作用?
我已经阅读了几个地方从来没有以 root 用户身份构建 RPM。因此,我定义了一个新用户并尝试在那里构建 RPM 结构,但是,使用
rpmbuild --rebuild src.name.rpm
Run Code Online (Sandbox Code Playgroud)
返回一个错误,指出无法访问 topdir:
安装 curl-7.20.1-1.src.rpm
错误:无法写入 %sourcedir /usr/src/redhat/SOURCES
错误:无法安装 curl-7.20.1-1.src.rpm
有人知道如何进行此更改吗?我在新用户下设置了正确的 /src/ 目录。
我在 CentOS 上使用 phing 作为部署工具,我想使用 SshTask,它需要安装 libssh2。
我试过“pecl install ssh2”,但这要求我提供 libssh2 前缀 [/usr?]
我注意到这意味着我需要先安装 libssh2,但是 yum 没有那个包。所以我的问题是:在 Centos 上安装 libssh2 然后安装 pecl 扩展的最佳方法是什么?
是否可以仅从一个特定的 IP 访问 root shell
我正在使用centOS。我希望只有一个用户只能从一个 ip 通过 shell 登录
我目前是一名程序员,因此需要不断将我的软件上传到远程系统进行测试。我有大约 7 台机器需要接收所有内容的副本。
目前,我有一个简短的 bash 脚本,其中有一个 scp 为每台远程机器执行传输:
echo -e "\nUpdating Taiwan Machine"
scp {file1,file} bschlinker@taiwan:/home/bschlinker/
echo -e "\nUpdating Wisconsin Machine"
scp -P 2400 {file1,file2} bschlinker@wisconsin:/home/bschlinker/
Run Code Online (Sandbox Code Playgroud)
我痛苦地被提示输入每台机器的密码。我知道我可以用 SSH 密钥解决这个问题——但我不想通过密钥对远程机器进行无密码身份验证。因此,我在 SSH 密钥上设置了密码。我读过一次输入密码后,它将在当前终端会话的其余部分保持活动状态。真的吗?如果没有,有什么想法吗?