我发现这个解决方案对我有用,但我不明白它是如何工作的,因为 sed 命令将其自己的参数用单引号括起来,并且整个 ssh 命令也用单引号传递。这是从 OSX (bsd) 运行的。
ssh -t -p 22 root@thehost 'for user in $(/bin/ls -A1 /var/cpanel/users) ; do if grep -q RS=paper /var/cpanel/users/${user}; then sed -i 's/^RS=paper_lantern$/RS=x3/' /var/cpanel/users/${user}; fi; done'
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释为什么这样做,以及为什么我不需要转义 sed 命令的单引号 - 我在任何地方都找不到参考?谢谢。
什么是更好的选择:使用 su 切换到 root 或启用 sudo?如果不使用 sudo,入侵者将需要知道允许 ssh 的用户的密码(或密钥)以及 root 密码。使用 sudo 非特权用户的密码就足够了。
我设置了一个新的网络服务器 (Debian 8.2),想知道通过 SSH 安全连接到它的最佳实践是什么,并且我仍然可以轻松使用它。
到目前为止,我已经在 SSH 上禁用了 PermitRootLogin 并切换了端口。iptables 也可以阻止我不需要的一切。现在我必须使用非特权用户登录,然后切换
su root
Run Code Online (Sandbox Code Playgroud)
但是作为 root 工作并不是我听说过的最好的事情......所以我想只授予我的非特权用户 sudo 权限。
然后再次入侵者只需要知道一个密码,因为 sudo 要求提供当前用户密码而不是 root 密码。因此,我通过禁用 SSH 中的 PermitRootLogin 使攻击者更难的计划不再起作用。
所以:su root 还是 sudo?
运行 ansible 任务(带有script操作)时,我收到此错误消息:
stderr: OpenSSH_6.0p1 Debian-4+deb7u2, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: auto-mux: Trying existing master
debug1: mux_client_request_session: master session id: 2
Shared connection to 10.0.2.222 closed.
Run Code Online (Sandbox Code Playgroud)
现在,在此之前有一堆针对同一主机的任务,它们都运行良好。我知道是客户端,因为客户端是 Debian;提供的东西是 Centos。
当我尝试查找此错误消息时,我发现(令我懊恼的是)我得到的通常是针对其他问题的较长消息的第一部分。我尝试添加
Host 10.0.2.222
ControlMaster no
Run Code Online (Sandbox Code Playgroud)
一开始我/etc/ssh/ssh_config因为这个问题纯粹是出于绝望,但它没有用,我真的不知道出了什么问题;我对 SSH 的工作原理知之甚少,甚至无法找出最可能的罪魁祸首是什么。
已阅读以下帖子,尽管标题相似,但问题不同: 能够通过 SSH 连接,但不能通过 x2go
从家里的windows 7客户端和windows 10客户端到centOS6.7远程服务器OVH x2go客户端安装程序“x2goclient-4.0.5.0-2015.07.31-setup.exe”下载自:http ://code.x2go.org/releases/ binary-win32/x2goclient/releases/4.0.5.0-2015.07.31/ PuTTY 连接 rsa2 密钥设置没有问题,无密码密钥和带密码的密钥,sshd_conf 指定为无密码登录。x2go 的第一次设置有 yum 安装了 x2goserver 包并遵循本教程:https ://www.howtoforge.com/how-to-install-x2goserver-on-centos-7-as-an-alternative-for-vnc
尝试通过 x2go 客户端连接时:
如果我取消第一个提示而不是输入密码,结果是相同的,只是跳过了另外 2 个提示。还尝试将 PasswordAuthentication 更改为 yes(在 sshd_conf 服务器端)用于没有密钥的测试目的,结果是一个错误框,在我的防病毒程序(avg)启动并撕下 x2go 客户端安装后不久就消失了我的系统据称包含未知威胁。
我需要首先声明我已经阅读了这里与我的有关的所有问题,但他们似乎都以某种方式访问了他们的服务器文件。我没有,所以这是我的问题。
我在 centOS 6.5 上,成功登录后 ssh 立即关闭连接。我正在使用 mac 和 windows/putty 以相同的结果访问我的服务器。无论如何,我现在可以访问我的服务器而无需访问其文件吗?
以下是成功登录后 ssh -vvv 的读数:
debug1: Authentication succeeded (password).
Authenticated to 4X.5X.XX.2 ([4X.5X.XX.2]:82).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug2: callback start
debug2: fd 3 setting TCP_NODELAY
debug3: ssh_packet_set_tos: set IP_TOS 0x10
debug2: client_session2_setup: id 0
debug2: channel 0: request pty-req confirm 1
debug1: Sending environment.
debug3: Ignored env TERM_PROGRAM
debug3: Ignored env SHELL
debug3: …Run Code Online (Sandbox Code Playgroud) 我一直在尝试在 debian 服务器中配置 sftp。sshd_config:
Subsystem sftp internal-sftp
UsePAM no
Match User sftpUser
ChrootDirectory /users/sftp/sftpUser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
Run Code Online (Sandbox Code Playgroud)
目录:
drwxr-xr-x 3 root root 4096 Oct 20 10:59 users
drwxr-xr-x 3 root root 4096 Oct 20 11:00 sftp
drwxr-xr-x 2 root root 4096 Oct 20 11:00 sftpUser
Run Code Online (Sandbox Code Playgroud)
cat /var/log/auth.log
Oct 20 10:58:22 w1 sshd[24634]: Accepted password for sftpUser from 201.156.103.213 port 34106 ssh2
Oct 20 10:58:22 w1 sshd[24636]: fatal: bad ownership or modes for chroot directory component "/" …Run Code Online (Sandbox Code Playgroud) 我通过 SSH 连接到终端服务器。在我使用的这台服务器上
qemu-system-x86_64 ... -curses
运行基于命令行的操作系统。
如何终止虚拟机?
目前,我唯一的选择是打开第二个 SSH 控制台,然后键入
killall qemu-system-x86_64
我有一个用于我的 Web 应用程序的 linux 服务器。每隔一段时间,一个进程(可能是一个长时间运行的脚本)可能会失控,可能会消耗太多内存/cpu 周期并阻塞所有其他进程。
在这种情况下,我无法通过 ssh 进入服务器,我需要通过管理面板重新启动服务器。我宁愿登录到机器并只处理有问题的过程。
是否可以在 linux 机器中安排资源,以便进程消耗资源,但始终有足够的资源可用于 ssh 连接?
目标是从远程服务器向本地运行的 tmux 发送 tmux 命令。不要运行到不同的 tmux 实例。
在 tmux 中,我们通过 ssh 连接到不运行 tmux 的服务器
local>tmux send-key C-p # works
local>ssh user@remote
user@remote> tmux send-key C-p # this will try to find tmux instance on remote. but we want to send it the local instead.
Run Code Online (Sandbox Code Playgroud)
我不能使用键绑定,因为这将从内部脚本运行。
我作为 Linux 管理员的前几份工作是在一些非常资深的管理员手下工作的。在所有这些情况下,kerberos 都是为用户设置的,以请求安全令牌并在一定时间内访问公司服务器。
现在我开始在一家初创公司工作,并开始参加围绕 devops 和 sre 类型公司的聚会。我注意到这些公司中的大多数选择使用 ssh 密钥、ldap 和某种形式的配置管理来确定谁可以访问哪些服务器。大多数用户在他们的 macbook 上只有无密码的 ssh 密钥。这是非常不安全的。
是什么让 ssh 密钥设置优于 kerberos 设置?