AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[telnet](server)

Martin Hope
run_the_race
Asked: 2022-04-21 04:49:30 +0800 CST

如何在 debian 中远程登录到 unix 套接字以测试 memcached

  • 0

要在 Ubuntu 上测试 memcached,我会运行以下命令:

echo "stats settings" | nc -U /run/mydir/memcached.sock

不过现在我换成了 Debian,Debiannc不支持这个-U选项。

我试过了ss,没有喜悦。listentelnet -b /run/mydir/memcached.sock

Debian 中的等效命令是什么?

telnet memcached unix-sockets
  • 1 个回答
  • 137 Views
Martin Hope
Sem van den Broek
Asked: 2021-12-11 05:10:33 +0800 CST

iptables + telnet 不阻塞端口

  • 0

我有一个 Debian 服务器,我想阻止所有传入和传出端口(尤其是所有传出电子邮件端口),除了我专门添加到 iptables 中的那些。我目前的设置正在工作并且似乎足够严格,但是当我启动一个telnet会话来测试例如端口 25 的 smtp 时,它似乎连接没有问题,即使我没有专门打开端口 25 作为 OUTPUT 端口。我注意到当我用 刷新 iptables 时iptables -F,连接被阻止,但是 DNS 解析和 http 流量也不起作用。值得一提的是,我也在这台服务器上运行 Docker,这意味着 Docker 维护自己的 iptables 链,我不会在这个问题中具体列出。所有 Docker 规则中都没有端口 25,

我还没有找到一种简单的方法来实际尝试将电子邮件发送到 smtp 端口 25,但我猜想成功建立 telnet 会话也将允许使用相同的连接来发送邮件。

有人能指出我正确的方向吗?

远程登录输出:

$ telnet smtp-relay.gmail.com 25
Trying 2a00:1450:4013:c03::1c...
Connected to smtp-relay.gmail.com.
Escape character is '^]'.
220 smtp-relay.gmail.com ESMTP k6sm844273wms.37 - gsmtp

我当前 iptables 的 INPUT 和 OUTPUT 链:

Chain INPUT (policy DROP)
target     prot opt source               destination
DROP       all  --  anywhere             anywhere             match-set blacklist src
ACCEPT     icmp --  192.168.4.0/24       anywhere             icmp echo-request
ACCEPT     tcp  --  192.168.4.0/24       anywhere             tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere             multiport dports http,https state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere             icmp echo-reply state ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:domain state RELATED,ESTABLISHED
ACCEPT     udp  --  anywhere             anywhere             udp spt:domain state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             multiport sports http,https state RELATED,ESTABLISHED

Chain OUTPUT (policy DROP)
target     prot opt source               destination
ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:domain
ACCEPT     icmp --  anywhere             anywhere             icmp echo-request
ACCEPT     icmp --  anywhere             192.168.4.0/24       icmp echo-reply state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             192.168.4.0/24       tcp spt:ssh state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             multiport dports http,https
firewall smtp telnet iptables docker
  • 1 个回答
  • 82 Views
Martin Hope
Ruby
Asked: 2021-08-06 11:17:34 +0800 CST

所有出站流量都使用 IPV6

  • 2

我有一个安装了 postfix 的 Debian 10 服务器,每次我尝试发送出站邮件流量时,服务器都使用 IPV6 而不是 IPV4。这会导致 postfix 记录Connection timed out。

我尝试使用 telnet 将数据包发送到 google SMTP 服务器,每当我运行命令时telnet gmail-smtp-in.l.google.com 25,终端都会延迟几秒钟,然后输出

Trying 2a00:1450:400c:c06::1a...
Trying 173.194.76.27...
telnet: Unable to connect to remote host: Connection timed out

请我不知道发生了什么。

ip telnet ipv6 ipv4 linux-networking
  • 1 个回答
  • 171 Views
Martin Hope
Грузчик
Asked: 2021-04-06 10:03:40 +0800 CST

如何使用 curl 和 telnet 而不是 cgi-fcgi?

  • 0

我正在使用这个 script.c:

#include <fcgi_stdio.h>
#include <stdlib.h>
int main (void) {
while (FCGI_Accept() >= 0) {
    printf("Status: 200 OK\r\n");
    printf("Content-type: text/html\r\n\r\n");
    printf("<!doctype><html><body>Welcome!</body></html>\n");
}
return EXIT_SUCCESS;
}

我编译它使用

gcc script.c -o script.fcgi -lfcgi -O3 -Wall -Wextra -pedantic -std=c11

然后,我输入终端:

 cgi-fcgi -start -connect localhost:9000 script.fcgi
 cgi-fcgi -connect localhost:9000 script.fcgi

并获得输出

Status: 200 OK
Content-type: text/html

<!doctype><html><body>Welcome!</body></html>

之后,我使用了 curl

 curl localhost:9000
 curl: (52) Empty reply from server

和远程登录

 telnet localhost 9000
 Connected to localhost.
 GET / HTTP/1.1
 Connection closed by foreign host.

为什么我只使用 cgi-fcgi 获得成功结果?如何使用 curl 和 telnet 从脚本中获取相同的数据?

fastcgi telnet curl linux-networking
  • 1 个回答
  • 1142 Views
Martin Hope
zarax
Asked: 2021-03-09 13:19:05 +0800 CST

Telnet 连接到服务器但无法传输数据

  • 0

我们的客户端有一个服务器,我们的 Web 应用程序在端口 443 和 2000 上运行。我们的客户端有两组 IP 地址。一组用于公司大楼中使用的计算机。这些计算机可以浏览这两个 Web 应用程序。另一组 IP 地址用于通过 VPN 连接进行远程连接的用户。这些用户可以浏览在端口 443 上提供的 Web 应用程序,但无法浏览在端口 2000 上提供的 Web 应用程序。他们的浏览器出现超时错误。

我们知道这不是软件问题,因为公司大楼中的用户可以毫无问题地使用这两个应用程序。他们还允许来自两个 IP 地址组的两个端口的流量。当有人使用建筑物内的计算机连接到 Web 应用程序时,防火墙软件会显示所有请求都已成功处理。但是,当他们尝试通过 VPN 连接连接到端口 2000 时,请求被发送到服务器但用户无法得到响应。防火墙软件显示“不完整”文本。请注意,仅当通过 VPN 连接请求端口 2000 时才会出现此问题。如果通过 VPN 请求端口 443,则没有问题。

我们在服务器的 2000 端口上设置了一个 TCP 回显服务器,并尝试通过 VPN 连接通过 telnet 命令连接到 2000 端口。我们看到它可以连接。但是,不会回显通过 telnet 发送的文本。如果我们在公司大楼内的计算机上尝试相同的操作,我们可以通过 telnet 连接到服务器,并且还会回显通过 telnet 发送的文本。

我们还在服务器上运行 tcpdump 命令来监听端口 2000 上的 TCP 包。当我们通过 telnet 连接到服务器时,我们可以看到来自两个 IP 组的 TCP 活动。但是,当我们通过 telnet 发送文本时,只有从公司大楼内的计算机发送的文本在 tcpdump 输出中可见。从 VPN 用户的计算机发送的消息不会在 tcpdump 上创建 TCP 活动。

我们花了很多时间,无法弄清楚问题所在。任何帮助表示赞赏。

firewall networking web-server telnet tcp
  • 1 个回答
  • 190 Views
Martin Hope
Ehsan Sajjad
Asked: 2020-12-30 09:50:39 +0800 CST

Windows 到 Linux Ping 在 Telnet 工作时无法正常工作

  • 1

在 Linux 上,我们有一个正在运行的服务正在侦听端口 9999,但是当我们尝试使用 PING 从同一网络上的 Windows 机器上检查它时,它说:

Ping 请求找不到主机 10.32.9.82:9999

而当我尝试使用 telnet 时

telnet 10.32.9.82 9999

Telnet 连接成功。

所以我想了解为什么 telnet 工作但 PING 不是因为服务正在侦听 TCP 上的 IP 和端口。

windows linux ping telnet
  • 1 个回答
  • 1700 Views
Martin Hope
derekmc
Asked: 2020-11-25 07:33:06 +0800 CST

如何锁定 SSH 和/或 telnet 用户只运行自定义 shell 而没有其他命令或程序?

  • 0

我在堆栈溢出时问过这个问题,但我认为在 serverfault 上可能更合适,因为它与系统管理和安全性有关。

我正在寻找一个 web 服务的原型,而不必处理 HTTP 和其他 web 问题,这样用户就可以登录并使用一个只通过 stdin 和 stdout 交互的简单程序。

经过一番研究,我意识到,这就是“shell”的作用(即它通过标准输入和标准输出提供用户与系统的交互),所以我决定创建一个特定的用户并将他们的 shell 设置为我的程序,我可以轻松地原型这种“网络服务”,甚至可能允许许多用户不同的用户在程序本身内部进行身份验证,并且都使用相同的 ssh 用户。

我的问题是,将用户的 shell 设置为我的自定义程序,而不是从该程序中调用任何其他脚本或程序,是否足以限制对系统的访问,以便用户无法直接读取或写入文件,例如例子?

为了解决这个问题,我编写了一个自定义的“shell”,它从标准输入读取整数 n,并输出第 n 个斐波那契数。将其设置为用户的 shell 后,似乎 sftp 和通过 ssh 运行自定义命令不起作用,但我对 ssh 或 telnet 的了解不够,无法确信用户没有其他方法可以提升对系统的访问权限.

例如,这是我自定义的“fibonacci shell”程序:


#include <stdio.h>

long fibonacci(int n){
   long a = 0;
   long b = 1;
   for(int i=0; i<n; ++i){
       if(i%2) a += b;
       else    b += a; 
       if(a<0 || b<0) return -1;
   }
   return (long[]){a, b}[n%2];
}

int main(int argc, char * argv[]){
   char line[1024];

   int x;
   printf("Welcome to the fibonacci shell.\n");
   printf("Type an integer n, and I will tell you the nth fibonacci number.\n");
   while(1){
       printf("> ");
       if(fgets(line, sizeof line, stdin) <= 0) break;
       int result = sscanf(line, "%d", &x);
       if(result <= 0){
           printf("fibshell: Please type a number.\n"); }
       else{
           printf("fib(%d) = %ld\n", x, fibonacci(x)); }
   }

   return 0;
}

由于其他安全问题,我不会用 c 编写我的原型,但我希望对此有所了解。

我已经对 ssh“ForceCommand”设置进行了一些研究,但这在这里似乎不合适,因为它似乎使用用户配置的 shell 调用命令。

是否将用户的 shell 设置为不调用其他命令的简单程序,足以限制对 sftp 等其他设施的访问?是否有可能大规模安全地执行此操作,比如说成百上千的用户,可能多达 5-10 个同时用户使用相同的 ssh 登录访问该程序?

我知道 telnet 服务不是很常见,但我在几个不同的环境中见过它们。我找到了一个用于下棋的在线 telnet 服务,而我工作的一家制造公司在内部曾短暂使用 telnet 服务来报告订单状态。“telnet 服务”或“ssh 服务”通常是如何编写的?是否为用户编写自定义外壳,并以其他方式限制用户的权限和系统访问,通常是如何完成的?

编辑:我应该提到我使用的是linux系统,在这种情况下是manjaro(即arch),但我想知道openssh和unix系统的一般情况,是否有办法绕过用户的shell设置并运行其他命令或直接编程。

ssh web-services shell telnet
  • 1 个回答
  • 137 Views
Martin Hope
u123
Asked: 2020-10-25 07:54:47 +0800 CST

通过 smtps (465) 端口使用 telnet 发送测试邮件

  • 4

根据本指南,我正在尝试使用 telnet 从 linux 发送测试电子邮件

https://linuxconfig.org/send-an-email-using-telnet

但连接立即断开:

$ telnet smtp.gmail.com 465
Trying 108.177.126.108...
Connected to smtp.gmail.com.
Escape character is '^]'.
MAIL FROM: [email protected] closed by foreign host

如何保持连接打开足够长的时间以发送我的测试邮件?

linux smtp telnet smtps
  • 1 个回答
  • 6670 Views
Martin Hope
Benjy
Asked: 2020-08-05 09:57:43 +0800 CST

telnet 已禁用,服务器 2012r2 仍在侦听端口 23

  • 0

我还能如何禁用 telnet 以符合安全审计?此服务器上未启用 Telnet 服务角色。但它在 0.0.0.0:23 收听。也没有本地 Windows 防火墙可以使用。

telnet windows-server-2012-r2
  • 1 个回答
  • 273 Views
Martin Hope
JGleason
Asked: 2018-06-16 11:08:53 +0800 CST

仅在 Windows 上安装 telnet 客户端是否存在安全风险?

  • 1

我最近要求在我的 Windows 安装上打开 telnet 客户端。devops 的人告诉我它受到限制,因为它通过明文传递人们的用户名和密码。我假设他指的是使用它来连接到不安全的 telnet 服务器,但我不会为此使用它,而只是将它用于一些快速的 TCP 检查。

我还注意到 OWASP 在他们的文档中引用了正是这样做的。

https://www.owasp.org/index.php/Test_HTTP_Methods_(OTG-CONFIG-006)

那么我错过了什么,客户端是否存在安全问题?

telnet
  • 2 个回答
  • 4762 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve