Articles of ssh

在进入交互模式之前,我可以在启动ssh会话时执行一些命令吗?

当使用ssh命令启动ssh会话时,我似乎有两个select – 默认的交互式会话与默认的env并从主目录开始 – 或执行任意命令,但非交互式(甚至技巧,如ssh "command; command; bash -i -l"似乎没有太多的好处)。 通常我想要交互式会话,但是之前发生了一些事情 – 通常是目录更改,或者有时系统环境调整。 这些东西会因会话而异,所以我不能将它们粘贴到.bashrc左右。 有什么办法可以做到这一点?

如何匹配SSHconfiguration主机条目的CIDR范围?

我正在寻找一种方法来使用特定的CIDR块来匹配SSH客户端configuration中的主机(通常是~/.ssh/config )。 例如,如果IP属于一定的范围,我有一个条目来转发通过堡垒主机的所有stream量,假设10.1.0.0/16 : host 10.1.* proxycommand ssh -q bastion -W %h:%p 这工作得很好,但是如何添加一些不符合点符号的范围呢? # doesn't work, unfortunately host 10.2.0.0/18 proxycommand ssh -q bastion-foo -W %h:%p host 10.2.64.0/18 proxycommand ssh -q bastion-bar -W %h:%p 手册中是否有一些我错过的东西,或者是一个聪明的脚本技巧,能够匹配这些主机IP范围?

如何为某些用户禁用sftp,但保持ssh启用?

我的项目需要我为某些用户禁用sftp,但这些用户仍然需要通过ssh进行连接。 有谁知道如何实现这个? 我看到了在/etc/ssh/sshd_config更改文件的build议,但是我不确定要更改什么。

一个非常大的/etc/hosts.deny可以减慢SSH连接吗?

我一直在使用denyhosts一段时间,我注意到我的/etc/hosts.deny变得相当大。 Denyhosts将IP添加到/etc/hosts.deny ,而我的拒绝主机configuration为永不清除IP。 $ wc -l /etc/hosts.deny 22149 /etc/hosts.deny 这可能成为一个问题? 我真的不明白libwrap是如何工作的。 希望它是哈希这些条目或快速访问的东西,但我没有看过这个代码。 我有一些奇怪的networking问题,我的SSH连接到gitosis服务器挂起(实际上,使用bin/vendors install vendor bin/vendors install Symfony2捆绑软件的更新)。 我真的不知道如何debugging,所以我正在寻找可能出错的东西,比如资源短缺。 这是在Ubuntu 10.04.4 LTS服务器上。

如何通过SSH隧道连接到MongoDB服务器

使用sequelpro连接到AWS上的远程mysql服务器非常简单 ,但是我正在用mongodb做同样的事情。 我尝试通过命令行设置一个SSH隧道,如下所示: ssh -fN -l root -i path/to/id_rsa -L 9999:host.com:27017 host.com 我也尝试用ip地址replace主机 我们的想法是将端口9999上的所有mongodb连接转发到端口27101上的主机上。但是,当我运行命令: mongo –host localhost –port 9999 连接失败,我得到这个: MongoDB shell version: 2.6.0 connecting to: localhost:9999/test channel 2: open failed: connect failed: Connection timed out channel 3: open failed: connect failed: Connection timed out 2014-05-22T14:42:01.372+0300 DBClientCursor::init call() failed 2014-05-22T14:42:01.374+0300 Error: DBClientBase::findN: transport error: localhost:9999 […]

在ssh会话中升级openssh-server

假设您从ssh会话发出apt-get upgrade ,并且要升级的软件包之一是openssh-server。 升级后新的sshd进程是否重新启动? 如果是,会议如何维护? 如果不是,我应该明确重新启动它还是有我缺less的东西?

是fail2ban安全吗? 最好使用SSH密钥?

我怀疑在login到SSH时是否应该使用密钥身份validation,或者只是去fail2ban + ssh(禁用rootlogin)。 是fail2ban安全还是真的更好的是继续前进,并生成密钥和configuration所有我的客户端机器上需要连接到SSH?

保证服务器上的SSH访问

前一段时间我遇到了一个服务器,Apache和Snort占用了100%的处理器,通过远程访问使sshd无响应。 我不得不身体到服务器login本地TTY,然后停止Apache / Snort。 我想知道是否有保证在100%加载CPU /内存情况下的ssh连接的方法。 设置一个“好”的优先权就足够了? 谢谢!

当某人在我的服务器上作为rootlogin时该怎么办

我有一台运行Debian 6.0的服务器,安装了logcheck。 昨天,我收到了这个消息: Jan 19 19:15:10 hostname sshd[28397]: Authentication tried for root with correct key but not from a permitted host (host=4.red-2-140-77.dynamicip.rima-tde.net, ip=2.140.77.4). 我不知道这是谁,我怀疑他是否在意外。 现在,我该怎么办? 我做的第一件事是禁用SSH密码authentication,并切换到公共/私人密钥。 我也检查authorized_keys文件,只看到我的公钥 接下来是什么? 我怎么知道其他人在我的机器上做了什么?

我可以configurationVSFTPD只听本地主机?

我有一个传统的应用程序,需要FTP,不能做SFTP。 我的解决scheme是: 使用VSFTPD放置一个FTP服务器 将防火墙configuration为仅接受来自本地主机的端口21连接 使用旧应用程序从客户端build立SSH连接 通过SSH隧道FTP 我想知道,如果我可以configurationVSFTPD忽略来自任何地方的连接,除了防火墙本身,本身。 腰带和护腕两者。