목록

2021년 3월 31일 수요일

Android11의 패키지 가시성(Package Visibility)

언젠가 부터 내가 만든 앱에서 

앱 설치 여부와 관계없이

아래의 코드 실행시 NameNotFoundException이 발생하고 있다.


PackageManager.getPackageInfo("com.star.apps", 0);


원인을 찾아보니,

Android11버전부터는 개인 정보보호를 위해

동일 기기에 설치된 다른 앱을 쿼리하고 상호 작용하는 방식이 변경되었다고 한다.


다른 앱을 쿼리하고 상호 작용하려면 AndroidManifest.xml에 다음을 추가하자.

<queries>
<package android:name="com.star.apps" />
</queries>

또는 아래의 permission을 추가해도 된다. 

QUERY_ALL_PACKAGES는 Android 11버전에 새로 추가되었다고 한다.

<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />


자세한 내용은 아래를 참고하면 된다.

https://developer.android.com/about/versions/11/privacy/package-visibility




2021년 3월 21일 일요일

가정용 인터넷 공유기 2대 연결하기

가정에서 인터넷 공유기 2대를 사용하는 방법에 대해 알아보자.

요즘은 가정에서도 인터넷 공유기를 2대 이상 연결해서 사용하는 사람들이 늘고 있다.

인터넷 공유기 1대로는 집안 구석구석 와이파이 신호가 잘 안잡히며

IoT기기가 늘어남에 따라 가정용 인터넷 공유기 한대로는 

부하를 감당하지 못할때가 있기 때문이다.

그럼 인터넷 공유기를 어떻게 연결하면 좋은지에 대해 알아보자


1. [Main 공유기 - Sub 공유기] 형태

외부망(WAN) - Main 공유기 - Sub 공유기로 연결한 형태이다

LAN선을 Main 공유기 임의의 LAN 포트와 Sub 공유기 WAN 포트에 연결한다.

이렇게 구성하려면 Main 공유기와 Sub 공유기의 네트워크를 다르게 설정해 줘야한다.

Main 공유기를 192.168.0.0/24 네트워크로 구성한다면

Sub 공유기는 192.168.1.0/24 네트워크로 구성해야 한다.

이렇게 하면 구성이 쉽고 단순하지만 한 집에 두 개의 네트워크가 생겨

두 네트워크간 NAS를 이용한 파일 공유나 다른 네트워크에 있는 프린터를

사용하기가 어렵다.

서브넷 마스크나 VLAN으로 해결할수 있다고 하는데 실제로 해 보진 않았다.

가정에서 그냥 인터넷만 한다고 하면 이런 형태로 구성하면 된다.

하지만, 파일이나 프린터를 공유하고 싶다면 

아래의 [공유기 - 허브 모드 공유기] 형태로 구성하자.


2. [공유기 - 허브 모드 공유기] 형태

외부망(WAN) - Main 공유기 - 스위치허브모드의 공유기로 연결한 형태이다.

일반적으로 가정용 무선 인터넷 공유기는 

스위치허브, NAT, DHCP, 무선AP, 보안 등의 기능이 내장되어있다.

허브모드의 공유기는 이중에서 DHCP 기능을 비활성화하여 운영하는 것을 말한다.

LAN선은 Main 공유기 임의의 LAN 포트와 허브모드의 공유기 임의의 LAN 포트에

연결하여야 한다.

여기서 중요한것은 허브모드 변경전 내부IP주소를 192.168.0.200 같이 임의로

지정해야 한다는 것이다.

이렇게 하지 않으면 나중에 공유기 설정화면에 접속하기 어렵다.

설정1 : 내부 네트워크 설정


설정2 : DHCP 서버 동작 비활성화

공유기 - 허브 모드 공유기 형태는 집 안에 하나의 네트워크로 통합되어

파일공유나 프린터 사용이 가능하다는 장점이 있다.




2021년 3월 14일 일요일

MAC, MAC, MAC 그리고 MAC

 컴퓨터 관련 용어중 MAC라고 있다.

이 MAC는 정말 여러 분야에서 사용되고 있는데..

정리를 해 놓으면 재미있을 것 같아 포스팅하였다.


1. 네트워크 분야

컴퓨터 분야에서 가장 일반적으로 MAC이라 하면 OSI 7계층 중 데이터링크 계층의

하부 계층인 MAC(Media Access Control)을 떠올릴 것이다.

데이터링크 계층은 논리적 연결을 담당하는 LLC(Logical Link Control)과

물리적 접속을 담당하는 MAC(Media Access Control)의 두 서브 계층으로 나뉜다.

우리가 가장 익숙한 부분은 MAC 주소라는 부분인데, 

이 것은 NIC(Network Interface Card)의 고유한 주소로 16진수 12자리로 구성된 

48비트의 물리주소이다.


2. OS 분야

inode에는 여러 정보가 저장되어 있는데 이중에 MAC time이라는 것이 있다.

M (Modify) time : 파일 수정 시간

A (Access) time : 파일 접근 시간

C (Change) time : i-node 수정 시간(파일 속성 변경 시간)


참고로 i-node에는 아래 정보도 포함되어 있다.

i-node number, 파일타입, 접근권한, 하드링크카운트, 파일 소유자, 파일 소유그룹, 파일 크기, Block Index

3. 정보보안 분야

다음은 정보통신 분야의 접근 통제 정책중에서 찾아볼수 있다.

강제적 접근통제라고 하는 MAC(Mandatory Access Control)이 그것이다.

DAC(Discretionary Access Control)이 객체의 소유자 마음대로 접근을 통제한다면

MAC은 데이터의 접근을 시스템(관리자)이 규칙을 결정한다.


4. 암호학 분야

마지막으로 암호학에서 사용되는 MAC(Message Authentication Code)이다.

MAC은 메시지의 무결성과 송신자 인증을 보장하기 위해 사용한다.

MAC과 비슷한 MDC(Message Detection Code)가 있는데 MDC는 메시지 무결성만 보장한다.

MAC의 종류에는 축소 MAC, HMAC, CBCMAC이라 불리는 CBAC 등이 있다.

축소MAC은 키와 메시지를 붙이고 Hash하여 중간 단계 다이제스트를 만들고

여기에 다시 키를 붙여 최종 다이제스트를 생성한다

리눅스 로그 파일

1. 사용자 로그인, 로그아웃 정보 / 시스템의 shutdown, booting 정보

파일 이름 : wtmp

명령어 : last, last 아이디, last reboot

파일 경로 및 명령어는 시스템에 따라 다름



2. 현재 로그인한 사용자 정보

파일 이름 : utmp

명령어 : w, who, whodo , users, finger

파일 경로 및 명령어는 시스템에 따라 다름



3. 5번 이상 로그인 실패 정보

파일 이름 : btmp, loginlog, failedlogin

명령어(리눅스) : lastb

명령어(솔라리스) : cat /var/adm/loginlog

명령어(AIX) : failedlogin

파일 경로 및 명령어는 시스템에 따라 다름



4. 가장 최근에 성공한 로그인 기록

파일 이름 : lastlog

명령어 : lastlog, lastlog -u 아이디

명령어(솔라리스) : finger 아이디

파일 경로 및 명령어는 시스템에 따라 다름



5. su 명령을 사용한 결과

파일 이름 : sulog, secure

명령어(유닉스) : cat /var/adm/sulog

명령어(리눅스) : cat /var/log/secure



2021년 3월 13일 토요일

시스코 라우터 비밀번호 설정

 라우터 비밀번호 설정하는 방법이다.


1. enable password 설정

user 모드에서 privileged 모드 진입 시 암호 설정하는 방법이다.

Router#configure terminal 
Router(config)#enable password 비번



type 7(복호화 가능)로 암호화

Router#configure terminal 
Router(config)#enable password 비번
Router(config)#service password-encrytion



type 5(일방향 함수)로 암호화

Router#configure terminal 
Router(config)#enable secret 비번



2. 텔넷 password 설정

외부에서 라우터 접속시 암호 설정하는 방법이다.

Router#configure terminal 
Router(config)#line vty 0 4
Router(config-line)#password 비번
Router(config-line)#login





3. 콘솔 password 설정

장비에서 라우터 접속시 CLI 암호 설정하는 방법이다.
Router#configure terminal 
Router(config-line)#line console 0
Router(config-line)#password 비번
Router(config-line)#login







2021년 3월 7일 일요일

안동예천버스


경상북도 안동시, 예천군, 경북도청신도시의 시내버스 운행정보와 실시간 도착정보(BIS)를 제공하는 앱입니다.

다운로드


안동예천버스는 다음과 같은 정보를 제공하고 있습니다.

 - 즐겨찾기 기능

 - 현재위치를 기준으로 한 정류장 보기

 - 버스노선 보기

 - 검색기능

 - 실시간 도착정보(BIS)

 - 지도에서 버스 정류장 및 노선 보기

 - 도착알람 기능


안동예천버스 실시간 도착정보는 안동시와 예천군의 버스 정보시스템에서

제공하는 정보를 이용한다.

 - 안동시 BIS : bus.andong.go.kr

 - 예천군 BIS : bus.ycg.kr


2021년 3월 6일 토요일

영주버스


경상북도 영주시의 시내버스 운행정보와 실시간 도착정보(BIS)를 제공하는 앱입니다.

다운로드


영주버스는 다음과 같은 정보를 제공하고 있습니다.

 - 즐겨찾기 기능

 - 현재위치를 기준으로 한 정류장 보기

 - 버스노선 보기

 - 검색기능

 - 실시간 도착정보(BIS)

 - 지도에서 버스 정류장 및 노선 보기

 - 도착알람 기능


영주버스 실시간 도착정보는 한국교통안전공단의 광역 버스 정보시스템에서

제공하는 정보를 이용한다.

한국교통안전공단 광역 BIS : http://tago.go.kr:9081/bis/