"/usr/bin/ping"은 기본 Fedora bash 색 구성표에서 노란색 배경에 빨간색 텍스트로 나타납니다. 이는 무엇을 의미합니까?

"/usr/bin/ping"은 기본 Fedora bash 색 구성표에서 노란색 배경에 빨간색 텍스트로 나타납니다. 이는 무엇을 의미합니까?

디렉토리를 나열할 때 빨간색 배경에 노란색 텍스트로 표시되는 /usr/bin것을 볼 수 있습니다 .ping

ping은 노란색 배경에 빨간색 문자를 표시합니다.

이 파일에는 특별한 기능이 없습니다.

$ file /usr/bin/ping
/usr/bin/ping: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV),
dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for
GNU/Linux 2.6.32, BuildID[sha1]=2508ea2a85b70c68967b3e6345541430f5317d5f,
stripped

$ stat /usr/bin/ping
   File: '/usr/bin/ping'
   Size: 62096           Blocks: 136        IO Block: 4096   regular file
Device: 802h/2050d      Inode: 4457229     Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:ping_exec_t:s0
Access: 2016-11-01 10:02:57.332925719 +0100
Modify: 2016-06-22 14:01:14.000000000 +0200
Change: 2016-07-10 23:41:59.623796126 +0200
Birth: -

~에 따르면터미널의 다양한 색상은 무엇을 의미하나요?여기서 우리는 "ca"를 의미하는 "yellow-on-red"라는 색상 해석을 나열하는 스크립트를 찾을 수 있습니다.

Fedora의 기본 bash 색 구성표에 표시된 색상

"ca"은(는) 무슨 뜻인가요? 아마도 이는 파일이 다른 곳에서 하드 링크되었음을 의미할 수 있습니다( 동일한 파일임) /usr/bin/ping./usr/ping

PS 시청할 때 이 문제가 발생했습니다.더러운 소를 설명하다, pingUbuntu의 명령이 setuid 루트로 나타나는데 이상하게 들립니다.

setuid 루트 핑

답변1

이는 ping추가 기능이 있음을 의미합니다.

$ getcap /usr/bin/ping
/usr/bin/ping = cap_net_raw+ep

짝수(Fedora에서는 최대 30개):

$ getcap /usr/bin/ping
/usr/bin/ping = cap_net_admin,cap_net_raw+ep

이를 통해 ping.NET으로 실행하지 않고도 원시 소켓을 열고 ICMP 패킷을 보내고 받을 수 있습니다 root.setcap(8)그리고capabilities(7)자세한 내용을 제공하세요.

역사적으로 pingsetuid는 원시 소켓으로 실행되고 root원시 소켓을 사용할 수 있도록 설치되었습니다. 많은 배포판은 권한 제어를 위해 제공되는 보다 세밀한 세분화로 인해 이러한 기능을 사용할 수 있게 된 후 이러한 기능으로 이동했습니다. 하지만 우분투에서는확실히 설치 프로그램에 문제가 있는 것 같습니다.이므로 pingsetuid는 여전히 설치되어 있습니다 root(함수 코드는관련 관리자 스크립트, Debian에서 ping구성됨활용능력가능하다면).

ping맨페이지요구 사항을 설명그러므로:

pingCAP_NET_RAW1) 프로그램이 에코가 아닌 쿼리에 사용되는 경우(옵션 참조 ), 2) 커널이 원시가 아닌 ICMP 소켓을 지원하지 않는 경우, 또는 3) 사용자가 ICMP 에코를 생성하는 것이 허용되지 않는 경우 수행 기능 이 -N필요합니다. 소켓. 이 프로그램은 set-uid 루트로 사용될 수 있습니다.

커널 2.6.39 이상에서 사용 가능프로그램이 ICMP 에코 메시지를 보내고 받을 수 있도록 하는 또 다른 메커니즘:net.ipv4.ping_group_range. 이는 Fedora 31 이상에서 사용되며 ping추가 기능 없이 작업할 수 있습니다(특히 루트 없는 컨테이너 내에서).setuid 및 기능 없이 Fedora에서 Ping은 어떻게 작동합니까?더 알아보기.

관련 정보