참조: OpenSSH Legacy Options


OpenSSH 7.0 이상에서 ssh를 사용해서 원격에 접속을 하려할 때 몇 몇 알고리듬은 보안상의 이유로 기본적으로 비활성화 되어 있다. 


NAS와 무선 인터넷 공유기의 ssh를 접속을 하려 하는데 아래와 같이 에러가 나면서 원격 접속이 되질 않는다. -o 옵션을 줘서 알고리듬을 추가 해도 된다. 또는 ~/.ssh/config에 host 정보를 추가 해주면 자동으로 적용이 된다.


no matching host key type found. Their offer: ssh-dss

My Cloud NAS 접속시 문제

krazyeom@MBP:~$ ssh  root@192.168.219.18
Unable to negotiate with 192.168.219.18 port 22: no matching host key type found. Their offer: ssh-dss

ssh -oHostKeyAlgorithms=+ssh-dss root@192.168.219.18

~/.ssh/config

Host 192.168.219.18
HosKeyAlgorithms +ssh-dss


no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

ASUS 무선 공유기 접속 문제

krazyeom@MBP:~$ ssh  admin@192.168.219.5
Unable to negotiate with 192.168.219.5 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 admin@192.168.219.5

~/.ssh/config

Host 192.168.219.5
KexAlgorithms +diffie-hellman-group1-sha1






​ ​​마음에 드셨으면 아래 추천 버튼을 꾹 눌러주세요. :]


저작자 표시 비영리
신고
Posted by KraZYeom

1월 15일 첫 커밋을 시작으로, 2월 12일 오후 1시 40분에 1차 편집 완성본을 만들었다. 


올해 첫 뻘짓 작업을 기획, 시행, 그리고 완성. iOS 9 Day By Day 한국어


iOS 9 Day By Day 시리즈가 PDF로 출간되었다는 소식을 접하고 번역을 할 생각을 하였다. 원본이 PDF 기준으로 책 표지까지 109페이지 밖에 안되어서 혼자 해도 얼마 안 걸릴 것 같았지만, 혼자 하면 귀찮기도 해서 빨리 번역을 해보고 색다르게 번역을 해보자는 결심해  #이상한모임 맴버를 주축으로 트위터, 페이스북에 있는 iOS 개발자들에게 낚시 글을 돌렸다. 함께 번역을 해보자고. 


총 13챕터. 한 챕터에 한 명씩 번역하기로 하였다. 커뮤니케이션 오류로 1명이 2개의 챕터를 번역을 해서 약간 꼬이기는 했지만, 무사히 번역을 마쳤다. 한 챕터당 6~10페이지 이내로, 그것도 대부분 코드와 사진이 있는지라 번역에 들어간 시간은 많지 않았다.


그리고 원저자에게 메일을 남겼다. 한국에서 놀고 먹는 iOS 개발자인 척하는 사람인데 번역을 해도 되느냐고... 기존에 Ray Wenderlich에서도 번역 활동을 한 경험도 있고 어쩌고저쩌고...


그리고 얼마 시간이 지나지 않고 답변이 왔다. 

Hi Sungwook,

Thanks for getting in touch. We're happy for you to translate iOS 9 Day By Day. If you translated the book, we would host it on our site, and then you can share the link to the wider Koren Community.

We will also add that you translated the book to the front-cover.

In a wider sense, we're also trialing a number of language specific web pages to describe to non-English speakers, exactly what we do. Is there a large number of developers in Korea who don't speak English?

Thank you for your email. It has been very interesting and I hope to speak again soon,

All the best, Matthew


이후에도 몇 번의 이메일이 오고 갔다. 초등학교 수준의 영작문 실력으로 보내도 찰떡같이 알아먹는 원어민!


구글 닥스 스프레드 시트에 간단하게 할 일 및 리스팅을 작성하고 작업을 시작했다.  그리고 또한  Github에 리포지토리를 하나 만들고 작업을 시작했다.


1월 말까지 번역을 마치고 싶어서 일주일이 지난 시점에서 한 번 빨리해달라고 쪼았...


그 이후에 문서 템플릿 통일 작업, 말투 통일 작업 등등을 하는데도 시간이 엄청나게 걸렸다. 전문적으로 해본 경험이 없다 보니 더더욱 시간이 걸리는 듯 하다. 그래서 세부적인 내용을 검토 하지 못 했다.


설 연휴까지 마치기로 마음 먹었고, 오늘까지 휴가여서 오늘 아침 부터 스타벅스에 출근해서 1차 편집 작업을 마쳤다. 휴. 


도움을 주신 13명에게 감사의 말을 남기며… 다음 뻘짓을 찾아야겠다.  


부산대학교 맞춤법 검사기, Github, MacDown, Xcode, Pages에게도 감사의 말을 전한다. 땡스 잡스.



저작자 표시 비영리
신고
Posted by KraZYeom
TAG iOS 9
  • 다운로드 받는게 위법이면 삭제 하도록 하겠습니다.

특정 개발 싸이트의 영상을 1년 유료 구독을 하고 거의 만기가 다가와서 1년간 거의 동영상을 보지 못해서 일단 다운로드 받아두려고 했다. 


얼마전까지는 그냥 소스 보기를 통해서 http://######/####.mp4 패턴으로 동영상 링크가 바로 보여서 다운로드 받기 쉬웠는데 갑자기 최근에 그런것을 막을려고 하는지 한번더 iframe으로 감싸서 소스 노출을 막았다.








뭐 어쩔수 없지... 하면서 포기 하던 찰라. Chrome에서 View Frame Source를 하니 iframe의 html 코드까지 싹 다 보인다. 땡스. 

거기서 바로 mp4 또는 720p로 검색을 하고 링크를 적절하게 찾아서 복붙하니 영상이 떡 하니 보이고 세이브를 하니 다운로드 된다. 


받아 놓는다고 보진 않겠지만... 팁.


모자이크 처리 하니.. 므흣하다.




저작자 표시 비영리
신고
Posted by KraZYeom

TabBarViewController가 있으면 그냥 selectedIndex 값을 원하는 값으로 넣으면 된다. 없으면 생성해서 또 추가 해야하니 번거롭다. 


걍 간단하게 TabBarViewController를 따로 만들지 않고 간단하게 스토리보드를 사용하여 앱 실행시 열릴 디폴트 탭을 설정할 수 있다.


  1. 스토리 보드에서 Tab Bar Controller 선택
  2. Indentity Inspector 탭 선택
  3. User Defined Runtime Attributes 에서 + 클릭
  4. Key Path는 "selectedIndex" 로 입력
  5. Type은 "Number" 로 입력
  6. Value는 원하는 인덱스 값 입력 "1"


이렇게 설정을 하면 앱이 실행할 때 설정한 탭으로 열린다. 최종 위치값을 저장해서 열게 할려면 어차피 코딩 작업이 필요하긴 하다.



저작자 표시 비영리
신고
Posted by KraZYeom

난이도: 하

@available(iOS 5.0, *)
public var multipleSelectionBackgroundView: UIView?

public var selected: Bool // set selected state (title, image, background). default is NO. animated is NO

다중 선택과 체크마크가 필요해서 간단하게 구현하는 방법을 공유하겠다. 오래전에는 이것도 구현을 했었어야 했던 기억이 있는데 엄청 간단하게 바뀌었다.


우선 다중 선택이 가능하게 하기 위해서는 아래 처럼 코드 상으로 다중 선택을 활성화 하거나,

self.tableView!.multipleTouchEnabled = true

스토리보드의 TableView에서 select 부분을 Multiple Selection을 선택을 한다.


그리고 아래 코드처럼 간단하게 구현을 하면 된다.

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
  let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath)
  // 1.
  cell.accessoryType = cell.selected ? .Checkmark : .None
  return cell
}

// 2.
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
  if let cell = tableView.cellForRowAtIndexPath(indexPath) {
    cell.accessoryType = .Checkmark
  }
}

// 3.
override func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {
  if let cell = tableView.cellForRowAtIndexPath(indexPath) {
    cell.accessoryType = .None
  }
}
  1. 현재 셀(cell)이 선택 되어 있으냐 아니냐에 따라서 체크 마크를 표시한다.
  2. 선택(select) 되었을 때는 체크 마크로 변경 한다.
  3. 선택 해제(Deselect) 되었을 때는 체크 마크를 제거 한다.




저작자 표시 비영리
신고
Posted by KraZYeom