linux16 [Linux] ethtool 명령어를 이용한 NIC(Network Interface Controller) 정보 확인 방법 리눅스(Linux)에서 ethtool 명령어를 사용하여 NIC Card(네트워크 카드, 랜카드)의 여러 정보를 확인할 수 있다. 간혹 현재 사용하고 있는 NIC Card의 지원 속도가 얼마인지 혹은 해당 NIC Card의 모델, 드라이버 등을 확인할 수 있다. 그럼 ethtool 명령어를 통해서 어떻게 확인할 수 있는지 알아보도록 하자. 1. 현재 사용하는 NIC Card 찾기 일단 ethtool 명령어를 사용하기 전에 현재 사용하고 있는 네트워크 인터페이스명을 확인해야 한다. 이때 사용하는 명령어는 ifconfig로 흔히 IP를 확인할 때 많이 사용하는 명령어이다. $ ifconfig # ifconfig [옵션] $ ifconfig -a enp0s31f6: flags=4163 mtu 1500 inet .. 2021. 8. 23. [Linux / MacOS] 리눅스 / MacOS에서 File 명령어 사용하기 간혹 리눅스나 MacOS에서 확장자가 없는 파일 혹은 확장자의 의미가 불분명한 경우가 있다. 이럴 때 파일을 열어 보면 되지만 여러 보안상 문제들도 발생할 수 있기 때문에 어떤 파일 혹은 어떤 파일 형태인지 알아보고 열어 보는 것도 좋은 방법이다. 그럼 파일을 열어보지 않고 어떻게 알 수 있을까? 리눅스나 MacOS에서는 File이라는 명령어를 제공하고 있으며 해당 명령어를 통해서 파일의 정보를 알 수 있다. File 명령어를 어떻게 사용하는지 간단히 알아보도록 하자. 1. File 명령어 사용하기 file 명령어 뒤에 확인이 필요한 파일명을 입력해보면 해당 파일에 대한 정보를 알 수 있다. $ file k.txt $ file img_2014.jpg $ file k.txt k.txt: UTF-8 Unic.. 2021. 3. 22. [Linux] 리눅스에서 특정 크기의 파일을 만드는 방법 파일 업로드 기능을 개발하는 도중 파일 업로드 크기(Size) 제한 부분에 대해서 테스트가 필요하였다. 테스트를 위해서는 다양한 크기를 가진 파일들이 필요하였으며, 개발 장비에 여러 다양한 사이즈를 가진 파일들이 있으나 100MB(메가바이트) / 1GB(기가바이트) / 5GB(기가바이트)와 같이 정확한 크기를 가진 파일들이 필요하였다. 다행히도 리눅스(Linux)에서는 여러 명령어를 통해서 특정 크기의 파일을 만들 수 있다. 그럼 그 방법들은 하나하나 알아보도록 하자. 1. truncate 명령어 사용 truncate 명령어를 이용하여 100MB의 크기를 가진 파일 생성해보도록 하자. 디렉토리 안에 아무런 파일이 없는 상태에서 아래와 같은 명령어를 입력해보자. $ truncate -s 100M 100mb.. 2021. 1. 19. [Linux] CentOS 8 Firewall(방화벽) 확인 및 중지 하기 Linux(리눅스)를 사용하다 보면 간혹 Firewall(방화벽)이 구동 중임에 따라서 특정 Port(포트)로 접근이 불가한 경우가 있다. 이때 Firewall 설정을 통해서 해당 Port만 ACL 설정하여 사용할 수 있으나, 그 방법은 다음번에 작성하기로 하자. 이번에는 Firewall 이 구동 여부 확인 및 중지하는 방법을 알아보도록 하겠다. 1. Port Open(오픈) 확인 DB Tool을 이용하여 3306 Port를 이용하여 접근을 하고자 한다. 우선 Terminal(터미널)에서 telnet(텔넷)을 이용하여 Port 오픈 여부를 확인해 보자. # Telnet을 통한 Port 오픈 확인 $ telnet 192.168.0.25 3306 Trying 192.168.0.25... telnet: con.. 2020. 9. 9. [Linux] CentOS Hostname(호스트명) 변경 하기 기본 설정으로 되어있는 여러 개의 시스템을 동시에 사용하는 경우 터미널 화면으로 바로 어떤 시스템인지 구분이 쉽지 않다. 기본적으로는 모두 Hostname(호스트명)이 아래 1번 내용과 같이 localhost로 설정되어있다. 이제 Hostname(호스트명)을 변경하는 방법에 대해서 알아보도록 하자. 1. Hostname(호스트명) 확인 현재 시스템의 Hostname(호스트명)을 확인하는 방법을 알아보자. # 1. 현재 시스템에 설정된 hostname(호스트명) 확인 $ hostname localhost # 2. 현재 시스템에 설정된 hostname(호스트명) 확인 $ hostnamectl status Static hostname: localhost Icon name: computer-desktop Cha.. 2020. 6. 28. [보안공지] 유닉스/리눅스 계열 운영체제 Sudo 명령어 취약점 보안 업데이트 권고(KISA) □ 개요 o 최근 해외에서 유닉스 및 리눅스 계열 운영체제의 Sudo 명령어* 취약점을 악용한 공격 사례가 발생하여 이용자들의 적극적인 업데이트 당부 ※ sudo 명령어 : 사용자가 다른 사용자의 권한으로 어플리케이션이나 명령을 실행할 수 있도록 하는 시스템 명령어 □ 설명 o Sudo 명령어에서 입력값 검증이 미흡하여 발생하는 권한상승 취약점(CVE-2019-14287) [1] □ 영향을 받는 제품 및 해결 방안 o 영향받는 버전 : Sudo 1.8.28 이전 버전이 적용된 유닉스/리눅스 계열 운영체제 - Redhat [2] - Ubuntu [3][4] - Openwall [5][6][7] - Opensuse [8] - Debian [9] - Gentoo [10] ※ 참고 사이트에 명시된 내용을 참고하.. 2020. 6. 26. [Linux] Chrony??? NTP vs Chrony 얼마전 테스트 서버에 CentOS 8 을 설치만 해놓고, 생각하고 있는 부분을 진행하지 못하고 한동한 계속 방치하고 있었다. 그러다가 간단히 확인할 부분이 있어서 테스트 서버에 접속 하고 확인할 부분을 다 확인하고선 우연히 date 명령어를 쳤는데 현재 시간과 다르게 설정이 되어있음을 확인하였다. 아무 생각 없음 ntpd 구동 여부를 확인하였는데 ntp가 구동을 하지 않고 있어 당황을 하였고 그러면서 서버 시간 동기화 관련하여 확인하게 되었다. 먼저 RHEL / CentOS 8 부터는 ntpd 가 지원이 종료 되고 시간 동기화 관련하여 chronyd 가 기본적으로 사용 된다. $ ps -ef | grep chronyd chrony 1640 1 0 5월31 ? 00:00:00 /usr/sbin/chrony.. 2020. 6. 18. [Linux] Linux(리눅스)에서 CPU 정보 확인 방법 간혹 사용중인 시스템의 CPU 정보(모델, 코어 갯수, 코어 속도등)에 대해서 확인이 필요한 경우가 있다. Linux(리눅스) OS에서 CPU 정보를 확인 하는 방법을 알아보도록 하자. 1. /proc/cpuinfo Linux(리눅스)에서 제일 기본적으로 사용하는 "/proc/cpuinfo" 명령어를 통해서 자세하게 알아보도록 하자. 제 테스트 서버의 정보는 "i5-7500 3.40GHz" 이며, 각종 CPU에 대한 정보를 담고 있다. 1.1 프로세스 갯수 해당 내용에 대해서는 아래와 같은 명령어를 통해 구할 수 있다. $ cat /proc/cpuinfo | grep processor | wc -l 4 1.2 코어 갯수 해당 내용에 대해서는 아래와 같은 명령어를 통해 구할 수 있다. $ cat /proc.. 2020. 6. 7. [Linux] 일반 계정에서 SUDO 사용 및 SUDOERS 설정 하기 우선 설명의 기반은 CentOS 8 기준으로 진행하였다. CentOS와 같이 Linux에는 관리자 계정과 일반 계정이 나눠져 운영이 된다. 그러나 일반 계정으로 사용하다 보면 일반 계정에서 Root 권한이 필요한 경우가 있다. 이때 sudo 라는 명령어를 통해서 임시적으로 Root 권한을 가질 수 있다. 그러나 관리자가 해당 일반 계정에 sudo 사용 권한을 주지 않는 경우 사용할 수가 없다. 또한, 아래와 같이 "xxx은(는) sudoers 설정 파일에 없습니다. 이 시도를 보고합니다."라는 오류 메세지도 출력 된다. $ sudo -i [sudo] xxx의 암호: xxx은(는) sudoers 설정 파일에 없습니다. 이 시도를 보고합니다. 그럼 사용을 위해서는 관리자가 sudoers 파일 설정이 필요 하.. 2020. 5. 17. [Linux] Python(파이썬) pyenv virtualenv Install(설치하기) Linux에 Pyenv을 설치해서 사용해 보자. 기본 환경 : CentOS 7.x Git 1.8 1.pyenv 설치를 위한 사전 준비 $ yum install -y bzip2 bzip2-develcurl gcc gcc-c++ git libffi-devel make openssl-devel readline-devel sqlite sqlite-devel xz xz-devel zlib-devel 2. pyenv-installer 설치 $ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash 환경 변수 설정 $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.. 2020. 5. 11. [Linux] How to add new network interface(SFP+) on CentOS 7 NIC 정보 확인 NIC의 이름과 UUID를 꼭 확인합니다. [root@localhost ~]# nmcli d 장치 유형 상태 연결 em1 ethernet 연결됨 em1 em2 ethernet 사용할 수 없음 -- em3 ethernet 사용할 수 없음 -- em4 ethernet 사용할 수 없음 -- p2p2 ethernet 사용할 수 없음 -- lo loopback 관리되지 않음 -- [root@localhost ~]# nmcli c 이름 UUID 유형 장치 em1 2fd019eb-3e5b-4c11-abf6-b254c7e541b1 802-3-ethernet em1 em2 e63d738a-d8b1-4700-918e-a7fb9dfc27b1 802-3-ethernet -- em3 8cb5b6ce-2dde-.. 2019. 11. 25. [Linux] find 명령어로 디렉터리 파일 찾기 자주 사용되는 옵션을 정리한해봄. -type : 디렉터리 , 파일 구분해서 찾을때 d : 디렉터리 f : 파일 -size : 파일 사이즈 -ctime : 일단위 -mmin : 분단위 # 일정 날짜가 지난거 찾을때 # 파일 생성일이 최근 30분 안에 생긴거 찾기 shell >$ find ./ -type f -mmin -30 # 디렉터리가 생성된게 30일 지난거 찾기 shell >$ find ./-type d -ctime +30 # 특정 파일 사이즈 이상되는거 찾기 # 1k 이상되는 파일 삭제 shell >$ find ./ -type f -size +1k -delete # -exec 활용 shell >$ find ./ -depth -type f -size +1k -exec rmdir {} \; # 디렉터리 .. 2019. 10. 16. [Linux] 리눅스 시스템 종료 및 재부팅 명령어 1. 리눅스시스템 종료하기 halt poweroff init 0 shutdown -h now 2. 리눅스시스템 재부팅하기 reboot init 6 shutdown -r now 3. 시스템종료에 관한 정보 확인하기 /var/log/wtmp 파일 확인 /var/log/dmesg 파일 확인 dmesg 4. shutdown 명령어 shutdown -r now : 즉시 재부팅 shutdown -h now : 즉시 종료 shutdown -r +분 메세지 : 메세지를 보여주고 x분후에 재부팅 shutdown -h +분 메세지 : 메세지를 보여주고 x분후에 종료 shutdown -r 시:분 메세지 : 메세지를 보여주고 x시:x분에 재부팅 shutdown -h 시:분 메세지 : 메세지를 보여주고 x시:x분에 종료 2019. 10. 8. [Linux] 명령어를 통한 32Bit / 64Bit 확인 리눅스(Linux)에 어플리케이션을 설치하는 경우 32Bit(비트) 인지 64Bit(비트)인지 확인하는 경우가 있다. 요새 나오는 장비에 OS 설치하는 경우 대부분은 64Bit로 설치되고 있으나, 32bit인 경우도 있어 확인하는 방법을 알아보자 1. getconf LONG_BIT 1.1 64Bit $ getconf LONG_BIT 64 1.2 32 Bit $ getconf LONG_BIT 32 2. arch 2.1 64 Bit $ arch x86_64 2.2 32 Bit $ arch i386 or i686 3. uname 3.1 64 Bit $ uname -m x86_64 3.2 32 Bit $ uname -m i386 or i686 4 $HOSTTYPE 4.1 64 Bit $ echo $HOSTTYP.. 2019. 6. 7. [Linux] Logrotate(로그 로테이트) 이용한 로그 관리 Linux에서 로그 관리를 위해 Logrotate를 사용 1. Logrotate란? Log 파일을 압축, 삭제, 메일링, 권한등 설정하여 쉽게 관리 할 수 있도록 사용되는 Linux 시스템 명령어 2. 설정 파일 /usr/sbin/logrotate logrotate 파일 위치 /etc/logrotate.conf logrotate 설정 파일 /etc/logrotate.d/* logrotate로 구동되는 각 프로그램의 설정 파일들 /var/lib/logrotate/logrotate.status logrotate가 구동된 Log /etc/cron.daily/logrotate logrotate가 Daily cron을 이용하여 구동 3. 프로그램의 설정 예시(http) /var/log/httpd/*log { 2017. 6. 10. [Linux] 커맨드라인(Command Line)으로 Base64 복호화 Linux에서 특정 복호화툴(Tool)이 아닌 커맨드라인(Command Line)모드를 통한 Base64 복호화를 해보도록 하자 1. 사용 옵션 $ base64 --help Usage: base64 [-dhvD] [-b num] [-i in_file] [-o out_file] -h, --help display this message -D, --decode decodes input -b, --break break encoded string into num character lines -i, --input input file (default: "-" for stdin) -o, --output output file (default: "-" for stdout) 2. 사용 예제 $ echo VGVzdEJhc2U.. 2017. 1. 21. 728x90 300x250 이전 1 다음