Articles of ssh

有关netstat输出的信息

在netstat,我看到我的端口22连接122.225.97.99。 这是否意味着某人正在访问SSH ..或者它只是与Ubuntu相关的东西 user@ubuntu:~$ netstat -ntu Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 100.72.4.xxx:22 122.225.97.99:14202 ESTABLISHED tcp 0 0 100.72.4.xxx:22 122.225.97.99:3781 TIME_WAIT tcp 0 0 100.72.4.xxx:22 122.225.97.99:8581 TIME_WAIT tcp 0 0 100.72.4.xxx:22 122.225.97.99:5110 TIME_WAIT tcp 0 0 100.72.4.xxx:22 122.225.97.99:49039 TIME_WAIT tcp 0 0 100.72.4.xxx:22 122.225.97.99:53793 TIME_WAIT […]

为什么在pssh期间拒绝权限?

我正在尝试添加一个ssh公钥到一堆服务器authorized_keys文件。 我的想法是使用pssh和主机列表。 为了testing,我试图给一个主机pssh: pssh -i -H root@host echo mypublickeyasastring >> /root/.ssh/authorized_keys 当我运行这个时,我得到: -bash: /root/.ssh/authorized_keys: Permission denied 如果从同一台服务器运行pssh,我只需要ssh进入主机ssh root@host ,我就可以运行echo mypublickeyasastring >> /root/.ssh/authorized_keys了。 我一直在浏览pssh手册页,但似乎无法find任何东西。 我错过了什么吗? 有一个更好的方法吗?

如何从cron作业自动完成SSH身份validation和CVS更新?

我从cron作业调用一个脚本。 在脚本中,需要运行CVS命令从远程存储库进行更新。 要做到这一点,它需要SSHauthentication。 我把下面的代码放在脚本中 … ROOTPATH="/Users/qazwsx/project/" cd $ROOTPATH SSHAGENT="${ROOTPATH}ssh-agent.cf" if [ -f "$SSHAGENT" ]; then rm "$SSHAGENT" fi ssh-agent -s | head -n 2 > "$SSHAGENT" if [ -f "$SSHAGENT" ]; then echo "$SSHAGENT" source "$SSHAGENT" ssh-add #function killsshagent { # /bin/kill $SSH_AGENT_PID #} #trap killsshagent EXIT rm "$SSHAGENT" fi … 但是当脚本运行时,会出现如下窗口: 我不能input任何东西到input字段。 所以SSHvalidation后的步骤没有成功运行,因为SSH访问没有build立。 我想知道我应该怎么做cron作业中的CVS更新。

在公共IP上启用SSH

我刚刚采取了服务器的控制。 该服务器在私人环境中工作,在VPN中,通过专用IP访问。 现在它是公开的,并链接到一个域名。 我可以使用私有IP通过VPN访问SSH,但不能通过域名访问。 我应该做哪些操作? 这是一个Centos 6.5服务器。

用ssh运行远程命令似乎挂起了所有其他的networking活动

我正在运行以下命令从远程计算机备份一个mysql数据库: ssh [email protected] 'mysqldump mainserver' | gzip -c > mainserver.sql.gz 我已经计时了这个命令,似乎需要2.5到3分钟。 这似乎没有问题。 但是,问题是远程服务器上的所有其他networkingstream量似乎中断。 远程服务器具有“彗星”式的http连接(连接长时间保持打开状态),这些连接似乎停止。 还有其他TCP连接保持打开状态,似乎在上述ssh命令完成的位置断开连接。 (至less在ssh命令停止时会出现日志消息,但是我怀疑没有数据正在被传输)。

忘记用户密码和禁用root sshloginUbuntu 14.04服务器

首先,我需要说,我不是亲Linuxpipe理员,而是networking主人试图configuration服务器。 虽然我在学习。 为了安全起见,我禁用了root sshlogin,然后忘记了在Keypass中保存用户帐户密码。 我可以真正以用户身份login,因为我使用SSH身份validation密钥login。 但是我不能去sudo,因为我不知道用户的密码。 但是我知道root密码。 我怎么能: 更改用户的密码login为用户,但不知道它的密码(虽然我知道根的) 更改SSH设置,以启用根login,之后,我将能够更改用户的密码?

proftpd:mod_sftp连接超时

我正在使用基于proftpd的mod_sftp的SFTP服务器。 唯一的问题是,我还没有find一种方法来保持空闲的连接时间更长,然后几分钟。 我们的用户请求空闲时间长达一整天。 我已经select了SFTPKeepAlive选项,但会话仍然断开。 是否有另一个选项,我忽略了或有其他地方search(例如openssh或pam )? 这里是proftpd.log的一个片段: Mär 20 11:03:34 sftp01 proftpd: SSH2 session opened. Mär 20 11:03:38 sftp01 proftpd: Preparing to chroot to directory '/srv/sftp/homes/user' Mär 20 11:03:38 sftp01 proftpd: USER user: Login successful Mär 20 11:03:38 sftp01 proftpd: USER user: Login successful. […] Mär 20 11:20:31 sftp01 proftp: SSH2 no transfer timeout, disconnected […]

Ubuntu SSH连接不closures

我们有一个来自外部方的服务器连接。 此方使用sftplogin并上传一些文件。 会议不是由该方闭幕,他们不知道如何做到这一点(这是一个Windows服务器,显然他们使用的脚本不支持它)。 现在服务器上周因为内存不足而崩溃了。 经过一番search后,我发现有2500个SSH连接(有些是几个月前的)。 每一个只占用一点点内存,但是它们一起使服务器崩溃。 我杀了他们,现在它运行顺利。 我怎样才能防止这种情况再次发生? 我想让所有的会议在几个小时后被杀死。 这是可能从服务器端,或者我应该为自己创build一个脚本? 有很多关于SSH超时的文章,但是所有的解决scheme都是客户端的。 编辑:现在我已经创build了这个脚本,每晚运行:计数= $(ps aux | grep [USERNAME] | wc -l)echo“Found $ count processes”; for i in $(seq $count) do echo "kill $i" kill -9 $(ps aux | grep [USERNAME] | grep -v grep | head -n 1 | tr -s ' ' | cut -f […]

从堡垒自动转发到下一台服务器?

我们在工作中使用我们的VPC的堡垒连接到几个私人服务器,我已经设置别名(SSH主机别名),以加快反弹到下一个服务器的过程,但这是一个缓慢的过程,许多用户最终catget我们configurationfind适当的别名。 我想找出一种方法能够让我们的用户能够通过堡垒ssh / sftp? 有谁知道一个可接受的方法? 我简单地看了一下mosh-server,但不确定这是否是正确的方法。

为什么SSH允许我在同一端口上创build多个本地隧道?

正如你所看到的,当我尝试创build另一个监听已经使用的本地端口但隧道被创build的隧道时,我收到错误信息。 当有另一个进程正在使用给定的端口时,我可以强制ssh不在给定的端口上创build隧道吗? ┌─[wakatana@~] [79 files, 89Mb] └──> ps -elf | grep 'ssh -fN' 1 S wakatana 4263 1 0 80 0 – 10660 – May02 ? 00:00:00 ssh -fN -L 5901:localhost:5901 [email protected] 0 S wakatana 6340 4754 0 80 0 – 1959 – 00:22 pts/7 00:00:00 grep –color=auto ssh -fN ┌─[wakatana@~] [79 files, 89Mb] └──> […]