1. firewalld 중지 및 해제하기

systemctl stop firewalld
systemctl mask firewalld

systemctl status firewalld (firewalld 상태 확인)

* firewalld.service
   Loaded: masked (/dev/null; bad)
   Active: inactive (dead)

위와 같이 나오면 정상적으로 죽은 것이다.

2. iptables service 설치

yum -y install iptables-services
systemctl enable iptables
systemctl start iptables

systemctl status iptables (iptables 데몬 상태 확인)

* iptables.service - IPv4 firewall with iptables
   Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
   Active: active (exited) since 수 2021-02-03 05:14:07 KST; 1h 26min ago
 Main PID: 9989 (code=exited, status=0/SUCCESS)

 2월 03 05:14:07 localhost.localdomain systemd[1]: Starting IPv4 firewall with iptables...
 2월 03 05:14:07 localhost.localdomain iptables.init[9989]: iptables: Applying firewall rules: [  OK  ]
 2월 03 05:14:07 localhost.localdomain systemd[1]: Started IPv4 firewall with iptables.

위와 같이 나오면 정상적으로 시작 된 것이다.


[증상]


CentOS7 서버에 FTP를 구축하여 처음 연결을 시도하였는데 아래와 같이 

500 OOPS vsftpd: refusing to run with writable root inside chroot()라는 메시지와 함께 

Critical error가 뜨면서 연결이 되지를 않았다.

원인은 chroot내에 쓰기 권한이 없어서 발생한 문제로써, 설정을 바꿔주면 해결되는 문제다.

 

 

[해결책]

vi /etc/vsftpd/vsftpd.conf

allow_writeable_chroot=YES 구문을 적당한 위치에 추가해 준다.

systemctl restart vsftpd.service


 

CentOS7 에서부터는 network 설정방법이 좀 달라졌음


[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-enp6s0



랜카드명이 eth0 에서 enp6s0 처럼 변경되었음. 



고정ip설정시 netmask 설정은 NETMASK, PREFIX 중에 하나만 사용해야 함. 

두 개 다 지정해 놓을 경우 PREFIX가 우선함


NETMASK = 255.255.255.224

PREFIX = 27


와 


PREFIX = 27

NETMASK = 255.255.255.224


는 동일하게 PREFIX값이 우선함


PREFIX 값을 주석처리하거나 삭제함



-----



서브넷 클래스에 따른 NETMASK / PREFIX 값 (둘 중 하나만 사용)


NETMASK = 255.255.255.0

PREFIX = 24

호스트범위 : 1~254



NETMASK = 255.255.255.128

PREFIX = 25

호스트범위 : 1~126



NETMASK = 255.255.255.192

PREFIX = 26

호스트범위 : 1~62



NETMASK = 255.255.255.224

PREFIX = 27

호스트범위 : 33~62



NETMASK = 255.255.255.240

PREFIX = 28

호스트범위 : 49~62



NETMASK = 255.255.255.248

PREFIX = 29

호스트범위 : 49~54



NETMASK = 255.255.255.252

PREFIX = 30

호스트범위 : 53~54



출처: https://ellordnet.tistory.com/67 [IT in MT]


 

CentOS 7 에서 로케일 변경하는 방법입니다.


현재 사용가능한 한글관련 로케일


# localectl list-locales | grep -i ko

ko_KR

ko_KR.euckr

ko_KR.utf8

kok_IN

kok_IN.utf8

korean

korean.euc

ru_RU.koi8r

ru_UA.koi8u

tg_TJ.koi8t

uk_UA.koi8u

utf8 로 변경


 # localectl set-locale LANG=ko_KR.utf8

수동으로 변경시는 /etc/locale.conf 파일을 만들어 아래 내용 추가


LANG=ko_KR.utf8

서버 부팅 후 로케일 설정 확인


# locale

LANG=ko_KR.utf8

LC_CTYPE="ko_KR.utf8"

LC_NUMERIC="ko_KR.utf8"

LC_TIME="ko_KR.utf8"

LC_COLLATE="ko_KR.utf8"

LC_MONETARY="ko_KR.utf8"

LC_MESSAGES="ko_KR.utf8"

LC_PAPER="ko_KR.utf8"

LC_NAME="ko_KR.utf8"

LC_ADDRESS="ko_KR.utf8"

LC_TELEPHONE="ko_KR.utf8"

LC_MEASUREMENT="ko_KR.utf8"

LC_IDENTIFICATION="ko_KR.utf8"

LC_ALL= 


# cat /etc/locale.conf



출처: http://itposting.tistory.com/62 [IT 관련 포스팅]

'Works > CentOS & RockyLinux' 카테고리의 다른 글

강제 umount 방법 (umount : device is busy 발생시)  (0) 2018.10.22
yum 트랜잭션 및 롤백  (0) 2018.09.07
SFTP log 설정  (0) 2018.02.22
dig 개념 및 사용법  (0) 2017.11.01
크론테이블에 등록 : crontab -e  (0) 2017.09.22


 

centos 7 고정 ip 


/etc/sysconfig/network-scripts/ifcfg-xxxxx 파일

############# dhcp-config ############

#TYPE=Ethernet

#BOOTPROTO=dhcp

#DEFROUTE=yes

#PEERDNS=yes

#PEERROUTES=yes

#IPV4_FAILURE_FATAL=no

#IPV6INIT=yes

#IPV6_AUTOCONF=yes

#IPV6_DEFROUTE=yes

#IPV6_PEERDNS=yes

#IPV6_PEERROUTES=yes

#IPV6_FAILURE_FATAL=no

#NAME=eno16777736

#UUID=d41562bc-ed43-4426-b395-e519468318a1

#DEVICE=eno16777736

#ONBOOT=yes


############### static-config #######

TYPE=Ethernet

BOOTPROTO=static

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

NAME=eno16777736

UUID=xxxxxxxxxxxxxxxxxxxxxxxxxx

DEVICE=eno16777736

ONBOOT=yes

IPADDR=192.168.233.xxx

NETMASK=255.255.255.0

GATEWAY=xxx.xxx.xxx.x

DNS1=168.126.63.1

DNS2=8.8.8.8

USERCTL=no

NM_CONTROLLED=yes




HWADDR=xx:xx:xx:xx:xx:xx : 맥주소 입력

TYPE= Ethernet : 이더넷 인터페이스의 종류

BOOTPROTO=static : ip할당 방식

static : 고정 아이피 할당

dhcp : 유동 아이피 할당

bootp : dhcp 이전에 사용하던 방식

none : 사용안함

DEFROUTE=yes : 디폴트라우트 사용 여부

PEERDNS=yes : dhcp 서버의 dns정보를 /etc/resolv.conf에 저장 여부

PEERROUTES=yes : dhcp 서버의 라우터 정보를 /etc/sysconfig/network에 저장 여부

IPV4_FAILURE_FATAL=yes : 설정이 잘 안됬을 때 IPv6 사용 여부(yes면 사용하지 않고 no면 사용)

IPV6INIT=yes : IPv6 사용 여부

NAME=enp0s3 : GUI 네트워크 설정 때 보이는 NIC 이름

ONBOOT=yes : 부팅시 자동 활성화 여부

BROADCAST= : 브로드캐스트 주소

IPADDR= : 아이피주소

NETMASK= : 넷마스크 주소

NETWORK= : 네트워크 주소

GATEWAY= : 게이트웨이 주소

DNS1= : DNS주소

DNS2= : DNS주소

USERCTL=no : 일반 사용자가 수정 할 수 있는지에 대한 여부

NM_CONTROLLED=yes : 네트워크 관리도구사용 여부



출처: http://flyyunha.tistory.com/entry/centos7-고정-ip-설정 [Get your Dream]


CentOS 7 은 많은 변화가 있었지만 그중 하나가 네트워크 인터페이스 이름 입니다.

지금까지 네트워크 인터페이스 이름은 eth0, eth1 식으로 고정되어 있었습니다. 하지만 CentOS 7 부터는 바이오스 장치 이름을 조합해서 생성됩니다. 다시 말해서 각 서버마다 네트워크 인터페이스 카드가 모두 동일하다고 할지라도 CentOS 7 에서의 네트워크 인터페이스 이름은 모두 다를 수가 있다는 겁니다.

이 문서는 CentOS 7 에서 네트워크 인터페이스 이름 바꾸기 에 대한 것입니다.

1. 상태확인

CentOS 7 에서의 네트워크 인터페이스 이름은 다음과 같습니다.

[root@localhost ~]# ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.55  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::5def:d7b6:b644:3343  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:f5:93:8e  txqueuelen 1000  (Ethernet)
        RX packets 76  bytes 11976 (11.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 84  bytes 11460 (11.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 72  bytes 6248 (6.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 72  bytes 6248 (6.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s3 으로 나옵니다. 네트워크 인터페이스 설정 파일도 이름과 동일하게 생성 됩니다.

[root@localhost ~]# ls -al /etc/sysconfig/network-scripts/ifcfg-enp0s3
-rw-r--r--. 1 root root 312  3월 28 09:31 /etc/sysconfig/network-scripts/ifcfg-enp0s3


2. eth0 로 바꾸기

바꾸는 방법은 grub 에서 바이오스장치이름을 네트워크 인터페이스 이름으로 사용하지 않겠다고 선언하는 것입니다. 커널이 업그레이드되면 grub 에 파라메터값을 다시 해줘야 하는 불편함을 없애기위해서 grub 의 기본설정을 변경해 줍니다.

[root@localhost ~]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0 ipv6.disable=1"
GRUB_DISABLE_RECOVERY="true"

핵심은 ‘GRUB_CMDLINE_LINUX’ 에 ‘net.ifnames=0 biosdevname=0’ 를 추가하는 것입니다. 그리고 다음과 같이 grub2 를 다시 만들어 줍니다.
ipv6.disable=1 을 적용하면 ipv6 기반이 비활성화 됩니다.

grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-123.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-123.9.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.9.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-123.8.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.8.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-123.6.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.6.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-babecd961e9a465686311e3f5930f25e
Found initrd image: /boot/initramfs-0-rescue-babecd961e9a465686311e3f5930f25e.img
done

이제 네트워크 인터페이스 파일을 다음과 같이 바꿔 줍니다.

root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# mv ifcfg-enp0s3 ifcfg-eth0

[추가] 이름 변경한 ifcfg-eth0 파일 내용 중 DEVICE= 와 NAME= 또한 동일하게 변경한다.

이제 재부팅을 하면 네트워크 인터페이스 이름이 eth0 로 올라온것을 볼 수 있습니다.

1. pstree 명령어를 찾을 수 없을 때

명령 : yum -y install psmisc

2. ifconfig 명령어를 찾을 수 없을 때

명령 : yum -y install net-tools

3. autoconf 명령을 찾을 수 없을 때 (pecl 또는 phpize 명령 실행시 autoconf 는 필수 설치 항목이다.)

[에러 메시지]
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
environment variable is set correctly and then rerun this script.

해결 : yum -y install autoconf

4. scp 명령어를 찾을수 없을 때

해결 : yum -y install openssh-clients (설치되면 scp, sftp등이 설치된다.)

5. nslookup 명령어를 찾을 수 없을 때 (CentOS7 에서)

해결 : yum -y install bind-utils

6. wget 명령어를 찾을 수 없을 때

해결 : yum -y install wget

7. lspci 명령어를 찾을 수 없을 때

해결 : yum -y install pciutils

8. ntsysv 명령어를 찾을 수 없을 때

해결 : yum -y install ntsysv

9. smartctl 명령어를 찾을 수 없을 때

해결 : yum -y install smartmontools

10. hdparm 명령어를 찾을 수 없을 때

해결 : yum -y install hdparm

11. rdate 명령어를 찾을 수 없을 때

해결 : yum -y install rdate


CentOS 6까지는 /etc/sysconfig/network 설정파일에 정의 도었지만 CentOS 7 부터는 새로운 init시스템(systemd) 으로 변경되면서

/etc/hostname 에 의해 정의된다.

hostnamectl 이라는 명령어가 추가되었는데, 이 명령을 이용해 hostname을 조작할 수 있다.

1. hostname 상태 확인하기

# hostnamectl status
   Static hostname: web.yufunding.com
         Icon name: computer-desktop
           Chassis: desktop
        Machine ID: c9b7cf08f05840c08378307dccc659c8
           Boot ID: 309a6f6094a8436fb89e5f38de46987d
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-327.36.2.el7.x86_64
      Architecture: x86-64

2. hostname 변경하기

# hostnamectl set-hostname [호스트명]

3. hostname 변경 후 확인

# hostname 명령어로 확인하거나 (Cent 4, Cent5, Cent6 부터 사용한 기본 명령어)

cat /etc/hostname 명령어로 /etc/hostname 파일에 정의한 hostname 이 입력되어 있는지 확인

/etc/hostname 에 정의가 되어 있으면 재부팅되어도 적용됨.

'Works > CentOS & RockyLinux' 카테고리의 다른 글

lastb - 로그인 실패 로그 확인  (0) 2017.02.14
CentOS 다운로드 미러 사이트  (0) 2017.01.03
tmpwatch  (0) 2016.10.19
du 명령어의 활용  (0) 2016.09.02
필요한 rpm 패키지를 다운받자  (0) 2016.08.03