标签: networking

为什么前 1024 个端口仅限于 root 用户?

这比什么都更无趣。我的一个朋友问我'在 Linux 下只有 root 可以使用哪个端口范围?我告诉他0-1024被限制了。然后他问我为什么会这样……我不知所措。什么都不知道。

是否有理由限制这些端口而 1025-65535 不受限制?

大多数主要的网络服务(HTTP、FTP、SSH、Telnet、HTTPS、POP、SMTP 等)都在这个范围内,所以我想到了可能的答案:

  • 不受信任的用户可以运行在这些端口上侦听登录详细信息的程序。
  • 不受信任的用户可能会运行未经授权的服务器应用程序。

任何人都可以在这里阐明吗?

networking security root tcp

61
推荐指数
1
解决办法
6万
查看次数

如何创建 TCP 侦听器?

简介:我创建了一个 bash 函数,它能够检查端口是否可用,如果为 false,则将其加 1,直到达到某个最大端口号。例如,如果端口 500 不可​​用,则将检查 501 的可用性,直到 550。

目标:为了测试这个 bash 功能,我需要创建一系列处于 LISTEN 状态的端口。

尝试:在 Windows 上,可以使用以下 PowerShell 命令创建 LISTEN 端口:

PS C:\Users\u> netstat -nat | grep 1234
PS C:\Users\u> $listener = [System.Net.Sockets.TcpListener]1234
PS C:\Users\u> $listener.Start();
PS C:\Users\u> netstat -nat | grep 1234
TCP    0.0.0.0:1234           0.0.0.0:0              LISTENING       InHost
PS C:\Users\u> $listener.Stop();
PS C:\Users\u> netstat -nat | grep 1234
PS C:\Users\u>
Run Code Online (Sandbox Code Playgroud)

基于此,我试图考虑一个可以在 CentOS 上执行相同操作的命令,但我不知道为什么,我在没有找到解决此问题的解决方案的情况下开始使用 Google。

预期答案:我将接受并赞成包含能够创建 LISTEN 端口的命令的答案,一旦运行该命令,该端口应保持在 LISTEN 状态,即:

[user@host ~]$ ss -nat …
Run Code Online (Sandbox Code Playgroud)

shell networking tcp

60
推荐指数
5
解决办法
22万
查看次数

我如何知道在 linux 的特定端口上运行的是什么服务?

我正在尝试在我的 linux 机器上运行 weblogic 服务器,但出现以下错误:

ERROR: transport error 202: bind failed: Address already in use
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690]
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
Run Code Online (Sandbox Code Playgroud)

我认为该错误意味着默认情况下为 8453 的调试器端口已被某些其他服务保留。如何找出在特定端口号中运行的服务?

PS:我使用了netstat命令,但它显示了占用所有端口的所有服务..这里我只对特定端口感兴趣。

command-line networking process ip netstat

59
推荐指数
3
解决办法
32万
查看次数

如何识别没有pid的进程?

我有一个监听 2 个端口的进程:45136/tcp 和 37208/udp(实际上我认为它是同一个进程)。但 netstat 不返回任何 pid :

netstat -antlp | grep 45136
tcp        0      0 0.0.0.0:45136           0.0.0.0:*           LISTEN      - 
Run Code Online (Sandbox Code Playgroud)

结果与“grep 37208”相同。

我也试过 lsof :

lsof -i TCP:45136
Run Code Online (Sandbox Code Playgroud)

但它不会返回任何东西。这是squeeze的新安装,我真的不知道这个过程是什么。任何的想法 ?

ANSWER 感谢您的意见,我发现它是什么。我卸载了 nfs-server nfs-common(在 dkpg --get-selections | grep nfs 搜索之后)并且未知进程消失了。奇怪的是,内核进程没有以任何方式标记。

再次感谢你们两位。;)

networking security process

59
推荐指数
2
解决办法
7万
查看次数

VirtualBox:Ubuntu 上 Debian 来宾中的两个网络接口(NAT 和仅主机接口)

我在 VirtualBox 上创建了一个带有两个接口的 Debian VM:一个 NAT(用于访问互联网)和一个仅限主机的接口。但是,我不知道如何让两个界面同时工作。如果我将仅主机定义为适配器 1,则可以从主机访问我的 VM,但不能从 Internet 访问;如果我将 NAT 定义为适配器 1,我可以访问互联网但无法访问我的来宾 Debian。

那么,我怎样才能让两个接口一起工作呢?

注意:我仍在尝试将主机的某个端口映射到来宾 SO 的 SSH 端口,因此无需建议我这样做:)

编辑:这是ifconfig第一个适配器是仅主机适配器时的输出 :

eth0      Link encap:Ethernet  HWaddr 08:00:27:f6:b2:45  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fef6:b245/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:495 errors:0 dropped:0 overruns:0 frame:0
          TX packets:206 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:48187 (47.0 KiB)  TX bytes:38222 (37.3 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host …
Run Code Online (Sandbox Code Playgroud)

networking ubuntu virtual-machine debian virtualbox

58
推荐指数
3
解决办法
11万
查看次数

在 VirtualBox 中安装 CentOS 后没有网络接口

我有 Ubuntu 12.10,我在上面安装了虚拟机,我在上面设置了 Centos 6.4 i386。在 Ubuntu 上,我有: 3.5.0-17-generic kernel running。

在虚拟机上,我安装了 Centos 6.4 并且一切正常,但是当我启动到 VM 机器时,只有环回接口。没有其他的。我尝试手动添加 ifcfg-eth0 文件,但没有任何反应。在 VM 设置中,我添加了 NAT 和 HostOnly 接口,但是每当我启动到 Centos 时,只有 lo 接口。我该怎么办?

networking centos virtualbox

58
推荐指数
7
解决办法
15万
查看次数

不能ifdown eth0(主界面)

我无法ifdown在 Debian 6.0.5 上使用接口:

user@box:/etc/network$ sudo ifdown eth0 && sudo ifup eth0
ifdown: interface eth0 not configured
SIOCADDRT: File exists
Failed to bring up eth0.

user@box:/etc/network$ cat interfaces 
auto lo
iface lo inet loopback

allow-hotplug eth0 
allow-hotplug eth1 

auto eth0
iface eth0 inet static
address 10.0.0.1
netmask 255.255.255.0
gateway 10.0.0.254

auto eth1
iface eth1 inet manual
Run Code Online (Sandbox Code Playgroud)

根据马可的要求:

user@box:/etc/network/$ cat /run/network/ifstate 
lo=lo
eth1=eth1
Run Code Online (Sandbox Code Playgroud)

networking debian

55
推荐指数
3
解决办法
24万
查看次数

TCP 可以提供超过 65535 个端口吗?

是否可以设置 Linux 系统使其提供超过 65,535 个端口?目的是让超过 65k 个守护进程在给定的系统上监听。

显然有端口正在使用,因此由于这些原因这是不可能的,因此将其视为尝试了解 TCP 在执行此类操作时会受到限制的地方的理论练习。

linux networking ip tcp ipv4

55
推荐指数
2
解决办法
3万
查看次数

断开连接后如何恢复外壳

我在远程 CentOS 5.6 机器上做一些工作,但我的网络一直在掉线。有没有办法在重新连接后恢复挂起的会话?

编辑:我正在用 yum 进行一些更新和安装,我担心如果进程一直挂在他们正在做的事情中间,这可能是一个问题。

linux shell networking session

54
推荐指数
4
解决办法
9万
查看次数

通过 ssh 访问服务器的 IP 地址的历史记录

我注意到我的一个服务器被黑客入侵并感染了一个已知的中国僵尸网络。

这是一个原型/测试虚拟机,有自己的静态 IP(美国地址),所以没有造成任何伤害(我花了一段时间才弄明白)。

现在我想知道入侵使用的是什么IP/s,以了解攻击是否来自中国。

有没有办法在服务器上的 ssh 上查看接收连接的历史记录?

编辑:系统是 Linux Debian 7

networking ssh logs ip forensics

54
推荐指数
4
解决办法
23万
查看次数